setting up provider class with contract classes
implementing queries and getType()