Added ITypeProvider support

Depending on the startup options of my app, some of the config items are not mandatory. However ConfigInjector only has the option to load all config setting types in the supplied assemblies. This change allows  the developer to specify a type provider instead to customise that behaviour.