Provide bundled_path() and resolve() helpers that locate ONNX
weights and JSON metadata via importlib.resources, falling back to
a user-supplied directory. Missing assets raise ModelLoadError.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Introduce AiMouseError base class plus ModelLoadError and
GenerationError subclasses so downstream consumers can catch the
umbrella or specific failure modes.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copy of coord.py (which is already pure numpy) into the private
underscored module to be consumed by upcoming mouse.py rewrite.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>