Untangle snapshot mapper

Also fixed performance issue with `StructEncoding` arbitrary
Wasn't sure if i should be including input/output key/value types here, they aren't used because this is a counter.