createChallenge now takes request message instead of bare username

This to implement updated spec, handle non-ascii usernames and to embed
version information in the initial request.
Merge pull request #22 from noaresare/pr/request-parameter

createChallenge now takes request message instead of bare username