Add content-hashed path support for immutable caching
Add OcamlWorker.fromManifest() to discover content-hashed worker URLs
from manifest.json, and update all test pages to use it instead of
hardcoded compiler paths. This enables Cache-Control: immutable for
all artifact paths except manifest.json and findlib_index.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>