irmin/test: extract Alcotest.run into per-subdir test.ml
Merlint E600 expects Alcotest.run to live in test.ml (the runner),
not in test_*.ml modules (which should only export a [suite]).
For each new per-lib test dir (admin, cbor, gzip, json, mime, oci,
text, toml, ui, yaml) split the runner out:
- test_irmin_<X>.ml keeps the spec tests; just [let suite = ...]
- test.ml one-liner: Alcotest.run "Irmin_<X>" [suite]
- dune (test (name test)) points at the new runner
For ui/, which has seven per-component test files, test.ml runs all
suites together.
Also shorten long identifier names (E320) — parse_manifest_has_
exactly_these_members -> parse_manifest_members, etc.