stripped badly built Provider class hiarchy, trying to drive tests from integration going forward