Fix IP v.future address bug

This patch fixes a very obscure (and probably never encountered in practice) bug in the parsing of IP literals with "v.future" address formats in the URI authority field.  Two new test cases have been created, one of which fails with the previous version.

I've also added a couple of test cases for non-ASCII characters which have apparently caused problems in the Network.HTTP URI escaping code.  These have not been enabled in the test suite, as URI.hs does not currently support IRIs.

I have a long-standing request to add some more usable URI escaping functions to this module:  if/when I get to look at this, I may think about including IRI support as well.

(Sorry, I forgot to do my work on a new branch - I'm guessing you can handle this anyway)