Add oauth authentication

Hi,

I implemented this, and I would like to make it better so that we can integrate it in the package.
I would like your feedback.

I used this methods to authenticate and they work.

Thanks!