oAuth support.
TODO: optional oauth.