Set up provider classes in models with auth and api classes
Created a superclass for auth classes in lib called GenericAuth
Updated the tests