Do not add trailing .git for every source and protocol.

There are some git servers that do not support trailing .git, like RhodeCode.
Trailing .git was removed from the GitRemoteResolver and added to the GitHub resolver.
The point of having a trailing git was to normalise the sources and cache entries.

Test cases added and adjusted.