Make PySVN optional for unit tests.

The unit tests no longer depend on PySVN. Some of the remaining tests
using Subversion repositories have been updated to use Git instead, and
the rest now use a new TestTool that is based off Git but has many
testable properties for things like branches, commits, basedir, etc.

You can now remove PySVN from your system and run the test suite. The
real Subversion-specific tests will just skip, and all main tests will
run.