GitFixtures.create_repo(): add repository path parameter

This will allow us to create submodule repos.
Fixtures.create_commits(): add repository path parameter

Allow creation of commits in arbitrary repository paths.
This will allow us to test git submodules.
allow creation of git submodules

Revisions are now recorded per repository path.
record revisions per repository path

This allows us to track revisions independently for git submodules.
ensure all scm invocations succeed when expected
annotate cwd
rename opts to args
allow git commands to run from cwd
extract submodule_path() method
add git submodule update test
Merge pull request #20 from aspiers/git-submodules

add the beginnings of tests for git submodules