Largely re-implement form
Allow digest auth to be used
Merge branch 'master' of https://github.com/QuestApp/JSClient