TODO:
 - Closing all docked widgets causes an exception
 - Test out minimum dock container size and maybe increase it a bit

I should consider adding multiple C# EditorWindow types (via an enum)
 - Normal dockable EditorWindow, a tool window (unockable, no tabs), a modal window or maybe others
   - Dockable EditorWindow would internally be EditorWidgetBase as it is now and I would create different types for other windows
   - (Other windows should not need layout)


Polish TOOD:
 - Change cursor icon when window is dragged
 - Prevent docking if available size is less than 20 pixels, otherwise there might be some weirdness

------------------------

LATER:
 get rid of CmApplication gMainCA and similar methods. Users may access CoreThread singleton directly now
 get rid of CoreAccessor::submitToCoreThread and instead leave that functionally only available to CoreThread

------------------------

Other things to remember:
 - Possibly add a way to have hidden widgets in the EditorWidgetContainer (like side-bars that pop on mouse over in Visual Studio)
