(GEP-37) False positive on provider parameter

The false positive is fixed with this commit. When types are loaded,
a check is made if providers are present and if so, the provider
parameter is added to the type. Similarly, when providers are loaded,
a check is made if the type has the provider parameter and if not,
it's added.

This commit also adds the cross-reference needed to get provider
documentation tooltip and proper proposals that shows a list of
the providers available for the current type.