Eliminate brittle platform-specific branching and the incomplete host-platform OS behaviour API, replacing them with a unified layout model where window frames, titles, and controls derive entirely from the active theme, with platform variants selected through a private function.
* CPApplication.j:
- Remove setOSBehavior:, OSBehavior, shouldMimicWindows, and simulatesWindows accessors, along with associated Info.plist keys and user defaults.
- Set default theme selection through _CPThemeVariant.
* CPApplication_Constants.j: Remove OS behaviour constants, dictionary, and notification.
* CPCompatibility.j: Add _CPBrowserOperatingSystem to return the detected host operating system.
* CPTheme.j: Remove CPThemeStateWindowsPlatform; add _CPThemeVariant to return the base theme.
* CPWindow.j: Remove the _close delegation to the window view.
* _CPStandardWindowView.j:
- Remove OS behaviour observer, _close, and _osBehaviorDidChange:.
- Position buttons and title using theme values during layout, applying fallback defaults when theme values are absent.
- Read title bar and sheet values from the view's active theme rather than the default theme.
* _CPTitleableWindowView.j: Query title-margin dynamically during layout instead of caching.