This involved a rewrite of the JSON RPC layer. I took the opportunity to clean up the handling of requests in general. It should now be easy to return nice help from the docstrings. Closes issue #99