Repository.has_same_location now *just* checks the location, not the class - this seems to fix problems in interaction between remote and vfs repositories.
Add str and repr on RemoteRepository.
RemoteRepository.fetch shortcircuits when given two repositories at the same location, which is required by the underlying fetch code.