Split mapper into various files for better organization

This needs to be refactored to look like our final organization
\cc @pixeltrix