Add more tests for provider
Fix bug with provider names being canonicalized too early
Fix bug with canonicalization