feat: add optional filename to Protocol.action for Merlin queries
Add string option filename parameter to Complete_prefix, Type_enclosing,
and All_errors action variants. Thread through builtin worker config and
merlin_client query functions. When provided, Merlin uses the filename
extension to determine .ml vs .mli syntax.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>