Untangle snapshot mapper

Also fixed performance issue with `StructEncoding` arbitrary
Why have setContext at all? Can;t you just have the field and the question goes away (I think)?