Make v0.9 ES backup strategy work against GHE v2.0 appliances

The elasticsearch directory is now owned and readable by the
elasticsearch user only.
Move back to single es backup script

We're going to hold off on the ES snapshot API approach until a
future release.
Use rsync instead tar for transferring v11.10.x ES backups to appliance

We needed to use tar for transferring to v11.10.x instances because
we didn't have sudo for controlling permissions on the resulting
files. We can just use rsync directly under v2.x.
Transfer ES backups to elasticsearch-restore directory

The ghe-config-apply command on the VM detects this directory and
moves into the active location.
Fix up backup/restore tests for ES changes
Merge pull request #12 from github/rollback-es-snapshot-api

Rollback to ES disable flush backup method for v2.x appliances
Merge backup-utils/master changes

Conflicts:
	libexec/ghe-restore-es-rsync
Better requirements section headers in TOC
Misc README cleanup
Fix hardcoded cool down time in error message
Wait for git-nw-repack procs to finish before transferring repositories

Fixes a potential issue with in progress git-nw-repack processes
finishing while the rsync transfer is in process, which could result
in pack files being removed before they're transferred.
Add a comment about the bracket synta[x]
Generalize 'git-gc processes remain ...' error message

The error message is a bit misleading since this can match git-gc
and git-nw-repack processes now. The point here is to convey that GC
processes didn't complete within the cooldown period, though, so I
think it's fine to generalize a bit here instead of listing the
various GC commands.
Merge remote-tracking branch 'origin/wait-for-nw-repack'
Tell rsync to preserve hard links for git objects/packs directories

Without -H option the rsync will sync the files that are hardlinked on
the source side as separate files on receiver side. In some situations
this might make it impossible to restore appliance from backup as
restored repository filesystem contents can be several times bigger
than original contents used to create backup.
Merge remote-tracking branch 'kjedruczyk/rsync-hardlinks'
Add update_restore_status to ghe-restore to keep manage in the loop during migrations
Correct ghe-restore -s snapshot-id to actually use the argument
Remove extraneous mention of GHE_RESTORE_SNAPSHOT
Remove assumption in test about presence of a git config

The tests listed below run git commit which fails when a git config does not provide user.email.

+ test/test-ghe-backup-repositories-rsync.sh
+ test/test-ghe-restore.sh
+ test/test-ghe-backup.sh