Improve normalizeUrl to fail on missing Host

Since we add in a default scheme, this only happens if the url was
empty or only had a scheme before