aos, uslp, gpt: drop unused FFI scaffolding and inline dead helpers
Same pattern as tc/tm/clcw: [struct_], [module_], [c_stubs],
[ml_stubs] are derived on the fly by the [c/gen.ml] generators via
[Wire.Everparse.schema codec], so the pre-materialized copies in
the main library are dead weight.
Also remove [decode_header] / [encode_header] in aos and uslp
(neither exposed in the .mli nor called internally; the full-frame
[decode] / [encode] path is the only public entry point) and the
unused [w_data_zone] field builder in aos, the dead variable-width
[be_uint] / [be_uint_map] / [fecf_to_string] helpers in uslp, and
the redundant [header_struct_] in gpt. The one exception is
[Gpt.signature]: move it up before the header codec and reuse it
in [f_signature] and [validate_signature] so the "EFI PART"
constant has exactly one definition.
Drive-by: the [Json.Error.to_string e] error-formatting pattern in
five interop tests never made sense (the error values are already
[string]); drop the wrapper. This was fallout from the in-progress
json restructure but is a trivial bug in the tests.