Adding Tumblr OAuth 1.0a provider

Had to refactor the base Oauth provider a bit so I could exempt Tumblrs provider in the right way. Take a look.