Changes:
* Add a class (Option<T>) to get/set/listen changes to one specific
preference option
* Add data/pref.xml with the metadata to generate types/classes (not it's
quite easy to add new preferences)
* Modify the generator to support generation of .h and .cpp files of
preference types
* Add code to migrate old options to new ones (and functions to delete
old values)
* Only a couple of options were migrated at the moment, it is a WIP, in the
future we should completely remove ISettings and direct calls
to set/get_config_*
- Added canvas icons to change the expansion direction in CanvasSizeCommand
- Added Widget::at() and Widget::offerCapture() member functions
- Improved ButtonSet widget