Fixes mapping provider order.

It happened that mapping providers appeared in the order that was not
compatible with type inheritance, which caused inherited type not to
inherit mappings from their respective base types. This should be fixed
not.