allow mixed case protocol specifications

They're not pretty (HTTP://google.com) but should probably be expected to work, since you can curl them or use them in a browser. Not sure what everyone else might think on this point - but here's a pull request in case you think it should be supported. 

In my case, I have a source of data that often uses uppercase protocols in the text I want to autolink. Of course, I could explicitly intervene and downcase, but I don't think my code should be doing any transformation on the source material.