Delete Orphan folder when last file is deleted
Manage file rename and if the directory is not empty in TFS repository

(modifications are a little ugly, now :( )
fix reading config for branches with dot in name
Added missing check for greater than or equals.
Interface segregation.
Start DirectoryTidier.
Implement DirectoryTidier.
Use DirectoryTidier.
Revert some things.

One thing of note is that DirectoryTidier uses the LatestChangeset,
not the parent changeset. This is to try to ensure that directories
are never removed when there are any files in them, even if some other
changeset tries to sneak in new ones.
Remove some debugging leftovers.
Merge remote-tracking branch 'origin/master' into delete-orphans
Added unittest to verify reading configuration for branches with dot in branch name
Move the remotes-with-dots test to a different place.
Merge all the RemoteConfigConverter test classes.
Refactor, and add a missing test.
Merge remote-tracking branch 'origin/master' into 297