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 
lgtm! eventually, we might wanna support id and keyword as well. those aren't spec'd though yet so better to spec and then promise support for them I think