Add git utilities

This commit adds a set of git utilities:

1. `git_ssh_env`: Helper to connect to git using given SSH private key
2. `repo_exists`: Check if git repo exists on disk
3. `clone`: Clone a remote repo
4. `current_rev`: get the current rev in a repo+branch
5. `export`: export a copy of a rev to a target path

These are the basic building blocks of getting a copy of a repo and
deploying a particular rev of it to a machine.