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.