Ga/add mapper

adds custom dimensions and test fixtures.
let me know if there's something wrong with `cm, cd` implementation.
i think depending on `msg.context.traits` makes sense for user traits ?

cc @calvinfo @ianstormtaylor 
nice