OAuth provider refactor
OAuth working