made partially provider agnostic
Merge pull request #1 from madAndroid/make_provider_independent

Make provider independent