Transition to universal provider safely

This allows us to hot switch back to the
old one if necessary.

See bug 936680, bug 936118
Merge pull request #342 from kumar303/uni-provider

Transition to universal provider safely