This adds the ability to define descriptions for key, puzzle and
pickups items in the gameflow. Players can examine items that have a
description in the inventory. Indicators are shown to make this clear,
the idea being builders may want to use this feature to offer hints.
Description text is automatically wrapped to fit the screen, and very
long text will be paginated. New line and feed escape sequences are
supported in the text for manual layout.
This also removes the necessesity of having an empty strings object in
levels that don't have any key items.
Additionally, the update_gameflow tool has been adjusted to support the
use of curly braces inside strings (and indeed nested objects).
Resolves#1821.