allow mixed case protocol specifications

* they're not pretty (HTTP://google.com) but should be expected to work