add benchy
little benchmark checking how much isArray costs
CodecConfig edge cases + split annotation

- CodecConfig bugs mostly related to primitive/ wrapper handling
and/ or CodableInfo making bad choices. Fixes are rather verbose,
but functional at least.
- some tests added for CodecConfig related to above
- Codec.Field split into Codec.FieldConfig and Codec.ClassConfig

  Codec.Set was previously renamed to Codec.Field. That was better
but still a little more collidy than needed, and if that scheme
was followed after splitting the field/ class functions, then
'Class' would collide way too much.
- other misc clean up