Normalise provider types before checking

This ensures, among other things, that:
 * Namespaces don't get in the way
 * Type synonyms get expanded
Merge pull request #860 from david-christiansen/provider-type-normalize

Normalise provider types before checking