Output and Err added to Repo type

Output and Err are the combined output returned from our
Git commands.

Now most functions only return Err, since the Output can be
accessed on the actual Repo.

Also Clone returns the cloned Repo. Just seems like a good idea.