Preserve filesystem timestamps during "make install".

A good idea regardless, and recommended by the Fedora and Debian
packaging guidelines.

From debian-policy:

  The rationale is that there is some information conveyed by knowing
  the age of the file, for example, you could recognize that some
  documentation is very old by looking at the modification time, so it
  would be nice if the modification time of the upstream source would
  be preserved.

It should also help prevent unnecessary backup churn after upgrades.

Signed-off-by: Christopher Meng <cickumqt@gmail.com>
Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
Tested-by: Zoran Zaric <zz@zoranzaric.de>
[rlb@defaultvalue.org: adjust commit message]
Reviewed-by: Rob Browning <rlb@defaultvalue.org>
Mention tmp/review/ branches in HACKING.

Signed-off-by: Zoran Zaric <zz@zoranzaric.de>
[rlb@defaultvalue.org: make minor wording changes.]
Signed-off-by: Rob Browning <rlb@defaultvalue.org>
Add traverse_ref and traverse_objects to git.CatPipe
Add a bup push command
Fix errors in the traversal code

Thanks to Matthieu Rakotojaona <matthieu.rakotojaona@gmail.com> for
reviewing earlyer patches.