Topic/map like encoder decoder

Add encoders/decoders for all `Map` sub-types (and specifically to support `SortedMap`).