added preliminary support for localized providers

This is a backwards compatibile way to load providers to get us going. This way we can convert them as we go.

This also drops support for Python 2.6