This simplifies code as there is no longer a distinction between "normal" providers and introspection providers in ProviderManager necessary. It's also easier to get an idea where introspection is used for parsing.