Fix URL encoding.

Due to the use of Data.Char.isAlphaNum, which returns True for characters outside of the ASCII range, many bytes were not correctly encoded.

For example, 'ø' in utf8 encodes to \195\184 and since isAlphaNum '\195' == True, the (incorrect) result was \195%b8.
Merge pull request #54 from romanb/urlencoding

Fix URL encoding.