e0044b25

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Add object-context XCodec sibling (XObjectCodec)

Add XObjectCodec, the object-context sibling of the value-context XCodec,
so ObjectCodecs can be extended too. Like XCodec it ties its value to a
phase-chosen type (XObjVal) via a Coercible constraint, keeping input/output
representational. The aeson interpreters gain per-context handlers
(ToJSONExt/ToEncodingExt/ParseExt now cover both value and object), and the
extension test covers a value and an object extension roundtrip.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 31s 3s 3s 34s 31s
Eval 10m59s 55s 55s 11m54s 10m24s
Build - - - - 10m55s
Suite 31s 58s - - 21m51s