* implements a Provider singleton, to be used by thirdparty plugins
* exporter: support for thirdparty providers
* splits plugin loading into two steps: discovery and load
1. get a list of all candidate plugins to load for the different paths
2. sort providers before on the rest of them and try to load them