Refactor|Client|Server|libdeng2: Current game and audiences moved to de::App
Added de::game::Game as the base class for actual games. The de::gamenamespace was used because de::Game is currently in use by the apps.
A null game is now identified by an empty string as the identifier.Removed the non-OO isNullGame() method (replaced by Game::isNull()).
de::App is responsible for knowing the current Game instance. Thegames collection and the concrete game classes remain in theclient/server app.
Added a new audience that gets notified before a game is unloaded.
View differences
Refactor|Client|Server|libdeng2: Current game and audiences moved to de::App
Added de::game::Game as the base class for actual games. The de::game
namespace was used because de::Game is currently in use by the apps.
A null game is now identified by an empty string as the identifier.
Removed the non-OO isNullGame() method (replaced by Game::isNull()).
de::App is responsible for knowing the current Game instance. The
games collection and the concrete game classes remain in the
client/server app.
Added a new audience that gets notified before a game is unloaded.