[VersionControl] Fix checkout to check for empty.
[Git] Fail properly when we have an invalid URL.
[Svn] Derive SvnException from VersionControl