create new instances of mapper class instead of cloning, fixes issues with shared attributes becoming unlinked on I18n Mappers
optimise constructor, and ensure that language is always set
revert method used to set id on textMapper