Refactoring oauth providers.