RESTification

This PR closes #23.  It updates the overall flow of the protocol to make better use of HTTP.  There are no changes to the validation challenges.  In case it helps, there's a side-by-side comparison of protocol messages here:

http://www.ipv.sx/tmp/restification.html 
Is there any sense in allowing the final certificate request to be signed by multiple account keys?  I see nothing preventing that here, or any suggestion that that might be a bad idea.  It would allow for a more distributed client implementation, which isn't always a bad thing.