Consolidate url parsing into GitlabUrl
This sits on top of !52 (merged)
For historical reasons we had multiple places where we parsed a gitlab URL or parts thereof. This leads to inconsistent behaviour so let's just use one class that can parse and re-compose such a URL.