codec: let open Json.Codec in cleanup across 15 small lib files
5-7 usages each. atp/blob_ref, freebox/{calls,firewall,http,parental,
switch}, meross/{consumption,electricity,timers}, oci/spec/{manifest_list,
media_type}, sbom, slack/{channel,reaction,user}. Several `name` and
`id` accessors annotated with `(t : T)` so the codec body's
`~enc:(fun u -> Some (id u))` form picks the local record over
mem_map. freebox call sites that wrap codecs into HTTP requests keep
`Json.Codec.list` / `Json.Codec.null` qualified.