Test that rm_all deletes files.

Had a problem with this when switching to Git::Raw.
Start using Git::Raw.

Git::Raw isn't always easy to use, nor are how to emulate the command line
features obvious.  More of Git::Repository will be replaced with Git::Raw
as time goes on.
Tag using Git::Raw.

Lightweight tags are just references in a special directory.
Allow log methods to take an object.

This is for string overloaded error objects such as Git::Raw::Error.
Extra diagnostics to debug a Travis failure.

t/Dist.t .......................... 33/? Config value 'user.name' was not found# Tests were run but no plan was declared and done_testing() was not seen.

t/Git.t ........................... 21/? Config value 'user.name' was not found# Tests were run but no plan was declared and done_testing() was not seen.
Get the verbose output of Git.t for debugging the naming problem.
Narrowing it down to tag().
Set the git user.name and email per repository.

Then both Git::Raw and Git::Repository will work without further hackery.
This is easier because Git::Raw does not have an option to locally set
its environment, and using %ENV could get messy.

This should fix the Travis problems.
Revert the commits for debugging in Travis.

Revert "Extra diagnostics to debug a Travis failure."
This reverts commit 7792052aee3641371bac752c2125584312b91b4a.

Revert "Get the verbose output of Git.t for debugging the naming problem."
This reverts commit 8a80c1dded3b19218681de29f039b348658b92b8.

Revert "Narrowing it down to tag()."
This reverts commit 7ebdbfe90eeb984ba18be79d99b4fada1f2994bb.
Merge branch 'feature/Git-Raw' into rewrite

For #60