Refactored configuration so that mappers are injected, and can be cycled through to determine the appropriate mapper.