libdeng2: Added Refuge, a persistent data store

Kept in a serialized Record written to the App's persistent data
archive.
Refactor|libdeng2: Use Refuge in Config
libappfw: Added PersistentState and IPersistent

PersistentState is a Refuge for objects that implement the IPersistent
interface.
libappfw|BaseGuiApp: Added "UIState" into persist.pack

The "UIState" file contains the serialized state of widgets that
implement IPersistent.
libappfw|GuiWidget: Automatic state storage for IPersistent widgets
libappfw: Cleanup
UI|Client: Store console width persistently
UI|Client: Store game session filter and sort order persistently