disk.mjs: add fallback initialization for critical paint API functions
The Painting class constructor wraps functions from $paintApiUnwrapped via
a for-in loop. In some edge cases, this wrapping may not complete properly,
leaving functions like box, line, wipe, and ink unavailable in the api object.
Added fallback initialization that checks for missing critical functions
after the wrapping loop and provides implementations if needed. This ensures
that button graphics and other painting operations in arena.mjs can access
the required functions, even if the primary wrapping mechanism fails.
- Check for missing box, line, wipe, and ink functions
- Add deferred implementations for graphics functions
- Prevents ReferenceError when painting() is called during boot
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>