libdeng2|Refactor: Use de::Id instead of duint32
Client: Added a RootWidget to CanvasWindow
Merge branch 'master' into ui-framework
libdeng2|Refactor: Converting Id to an integer

Also, fixed the build.
Client: Resize root widget when CanvasWindow is resized
Documentation|libdeng2: Updated references to de::FS
Client: Added LegacyWidget

All old UI rendering and components will be moved to the LegacyWidget,
after which they can be gradually replaced with actual, new widgets.
Client: Added GUI widget base class and stubs for LegacyWidget
Refactor|Client: Moved main loop drawing to LegacyWidget

The actual drawing of the main loop now occurs in the LegacyWidget.

Todo: Move time update and event handling, too.
Refactor|Client: Added ClientApp

Moved most of the code in main_client to the ClientApp.
Refactor|Client: Moved the ServerLink instance to ClientApp

sys_network.cpp has now been reduced to mere cvars and C wrapper
routines. In time, it can be removed completely.
Cleanup
Refactor|Client: Window resizing moved to CanvasWindow

window.cpp is still handling the Window state. In time, the contents
of window.cpp will be revised into CanvasWindow / WindowSystem.
Refactor|libdeng2|libgui: Independent Loop class, trimmed down LegacyCore

LegacyCore no longer contains a callback loop. Instead, GuiApp and
TextApp use a Loop to produce continuous audience notifications.

The loop callback functions will be replaced by widgets' update methods.
Client: GuiWidgets can be deleted via Garbage
libdeng2|Widget: Added a behavior flag for disabling the widget
Refactor|Client|Server: Removed loop callbacks, added BusyWidget

Instead of loop callbacks from LegacyCore, the equivalent functionality
is now handled as part of the CanvasWindow's widget tree. In the case
of the server, which has no UI, loop iteration is run in ServerSystem.

At present time, the best way to model the client UI is to have two
root widgets, one for the normal UI and one for the busy UI.

Todo for later: Merge the busy mode visualization into BusyWidget.
libdeng2: Cleanup

Removed obsolete stuff from LegacyCore. The app event loop is now
started and stopped directly via App.
libdeng2: Cleanup
Cleanup|Client: Removing old loop/draw callbacks and related code