Convert clone and commit to a new testing framework.

Requires a new command structure, but makes things a lot cleaner.

Relates to #23.
Remove unneeded fixture.
Convert tag command.
Remove debug lines.
Convert checkout command to new structure.
Remove error message, we'll do a minor release.
Merge branch 'master' into better-testing

Conflicts:
	tasks/git.js
Convert stash command.
Convert reset.
Convert rebase.
Add extra test case.