Extract classes Mapping and MappingConflict
Expose configuration to make app/console debug:config work
Add cross-type conflict detection