hap: let open Json.Codec in cleanup
40 Json.Codec. prefixes removed across 5 codec defs. The Hap_json
submodule uses a top-level `open Json.Codec` since none of its
records (characteristic, service, accessory) have fields that
clash with `mem_map`. Top-level char_write_codec, char_write_request_codec,
and Pairing.stored use per-let `let open Json.Codec in`.