Add support for JSON Web Token (JWT) exchange middleware.

Jared,

Please take a look at this PR and let me know if you would like to merge this or if it needs any changes. 

It is based off of Google's implementation of JSON Web Tokens (JWT).
>https://developers.google.com/accounts/docs/OAuth2ServiceAccount

It should conform to:
>http://tools.ietf.org/html/draft-ietf-oauth-json-web-token-06