autotest_quickmerge: Preserve file permissions of destination files.
autotest_quickmerge: Preserve file permissions of destination files.

When rsyncing files from the source tree to build tree, preserve file
permissions in the build tree. This way, any permissions set by the initial
emerge will be preserved.
On the other hand, if a new file is created, it will get the least restrictive
file permission allowed in the chroot, making sure all developers get the same
permissions.

Before this CL, the file permissions on files copied by test_that were preserved
from the source tree, and hence were dependent on the umask of developers' host.

BUG=chromium:342967
TEST=(1) Checkout a fresh autotest repo with host umask set to 027. This ensures
         that files in the source tree are not world-readable.
     (2) emerge autotest
     (3) In the autotest repo, edit files/client/cros/cellular/cellular.py
     (4) test_that DUT network_3GModemPresent
     (5) On the DUT, check that /usr/local/autotest/cros/cellular/cellular.py is
         world-readable.

Change-Id: I29bfe75fa5e94c8d21600ae4e1513c7c6457f9a2
Reviewed-on: https://chromium-review.googlesource.com/186019
Tested-by: Prathmesh Prabhu <6bd99e63707dfb9648154f5b1933c36b73b63d70@chromium.org>
Reviewed-by: Aviv Keshet <178e8ae417efbe404feca7ab4cb8f0ba8c109369@chromium.org>
Commit-Queue: Prathmesh Prabhu <6bd99e63707dfb9648154f5b1933c36b73b63d70@chromium.org>

chadversary/chromiumos.chromite,bpsinc-native/src_third_party_chromite,bpsinc-native/src_third_party_chromite,bpsinc-native/src_third_party_chromite,chadversary/chromiumos.chromite