Implement CoreGraphics rendering surface
Add platform/src/cg.rs with:
- CGColorSpace (device RGB), CGBitmapContext, CGImage wrappers
- CGRect/CGPoint/CGSize geometry types
- BitmapContext: Rust-owned pixel buffer wrapped in CGBitmapContext
- fill_rect(), clear(), create_image(), pixels/pixels_mut accessors
- draw_image_in_context() for blitting into a view's CG context
- 8 unit tests covering context creation, drawing, and edge cases
Add custom NSView subclass (WeView) in appkit.rs:
- Overrides drawRect: to blit CGImage from BitmapContext
- Overrides isFlipped for top-left coordinate origin
- BitmapView wrapper with set_needs_display() for redraw requests
- Uses ivar to store BitmapContext pointer per-instance
- Window::set_content_view() for installing custom views
- 2 new tests for WeView class registration and BitmapView creation
Add ivar support to objc.rs:
- class_addIvar FFI binding
- object_setInstanceVariable / object_getInstanceVariable FFI
- Id::set_ivar() and Id::get_ivar() helper methods
- Class::add_ivar() helper method
Update browser main.rs:
- Creates 800x600 BitmapContext
- Fills dark gray background with centered blue rectangle
- Installs BitmapView as window content view
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>