js_top_worker: memoize CRC checks and raise on mismatch
- Add symtable_memo and crc_memo hash tables to Impl for caching
module availability and CRC lookups (both binary and server side)
- Extract pure check_preload_status function into Impl for testability
- Capture server-side CRCs from fetched .cmi files in add_dynamic_cmis_sync
- Raise Crc_mismatch exception (instead of returning false) when a
preloaded package has different CRCs than the universe
- Add 8 ppx_expect tests covering: match, mismatch, partial load,
empty, missing CRCs, server CRC priority, single mismatch in group
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>