Handle UTF-8 in urlEncode/urlDecode

This fixes issue #34

In this implementation I've just copy-pasted the relevant bits of utf8-string into Network.HTTP.Base. It might be cleaner to just depend on the utf8-string package but I'm not sure if this would be acceptable to you.