Use authenticate method instead of assigning to rootScope
Add authorizationEndpoint and veritificationEndpoint to provides object
Add provider method for adding a new social login provider