Added configuration API for providers to store their configuration.

I'm still trying to work-out how users will modify this configuration.
For now, it'll be editing the config file directly.