http: always decode passwords and usernames to strings
Some Mercurial APIs return passwords as unicode strings, others as byte strings. I've given up trying to understand this, but let's just assume it's either a Unicode string, or a byte string using UTF-8.
Fixes: #360 (closed)