monopam, merlint: migrate to ocaml-opam + ocaml-meta
Replaces the opam-file-format and findlib library dependencies with
the in-tree streaming codecs:
- opam-file-format -> opam + opam.bytesrw
- Fl_metascanner + Fl_split -> meta + meta.bytesrw
All file reads go through Bytesrw.Bytes.Reader (via
Bytesrw_eio.bytes_reader_of_flow for Eio paths, or of_in_channel for
plain channels) so the parser sees slices directly — no upfront
slurp-the-whole-file that would defeat the streaming design.
Sites touched:
- monopam/lib/opam_repo.ml: load_package, scan_opam_files_for_deps
- monopam/lib/forks.ml: scan_verse_opam_repo dev-repo lookup
- monopam/lib/lint.ml: opam_depends_of_reader, scan_opam_files,
load_meta / scan_meta_dir, check_package,
reexports_of_pkg. in_words replaces
Fl_split.in_words for value tokenization.
- merlint/lib/rules/e915.ml: read_tags uses Opam_bytesrw.field_reader
for true streaming single-field lookup.
dune-project and *.opam regenerated: drops opam-file-format, adds opam,
meta, bytesrw-eio as appropriate.
All 406 monopam tests + merlint suite pass; merlint reports 0
regressions on the migrated files.