[new #11] Add OAuth support

Sohva is now able to start OAuth session with a CouchDB instance.
This required some changes and improvement on the existing interface:
 - Add new `OAuthSession`: people may now start cookie based or OAuth
   session with the CouchDB server.
   During this process, old session names are deprecated for more
   meaningful names to reflect the fact that there are now two kind of
   sessions (cookie based and OAuth).
 - OAuth signature must be made at last when all headers, parameters and
   body were set to the request. To achieve it, a new way of issuing
   http requests was added. Now the different sessions simply need to
   override the `_http` method to post process every request before it
   is sent. The OAuth session can thus sign the request, and the cookie
   session can add the cookie to request and set the cookie from
   response

closes #11