Autocreate git remotes

This allows git clone in tests without hitting the internet and without any setup or syntax change in the tests themselves.

I set up an alias chain for GitLocation#clone to generate a local remote for the repo to clone from, including tags.

For git_location_spec, this improves performance 3x and removes reliance on uncontrolled git repos.