Brothercake - the window object isn't in any spec...
As for ECMAScript object models, I'd prefer a clear splitting up between document, interface and language. Separate the host object (today melded into window) into something named, for example, host. Then, separate all interface objects into sometheng named say, interface. In that you could specify some natural objects such as screen, navigator, history, window (containing titlebar, menubar, statusbar, sidebar, toolbar, scrollbars, viewport etc.), security, privacy, permissions etc.
Then you should of course have the document. You should be able to climb from any element in any direction in it's inheritance or decendancy tree. host should be language related, containing all host objects such as Object, Number, Array, DOMImplementation, Error etc. (including the constructors for DOM and interface objects, and all other native objects.) It should also contain a way to find out what version of ECMAScript it is compatible with. (This meaning the latest version you are FULLY conformant with. You should need some form of compliancy test from ECMAs side to be allowed to return a certain version.)