add oauth provider models and base classes