add unit drawer, remove drawable_unit

This avoids the casting to superclass, and it's also a bit faster,
in the refactor of the redraw_unit function we cache all the values
from display that we need locally.
fixup: initialize ref_count_ to 0 in units
Merge branch 'master' of git://github.com/wesnoth/wesnoth
turn on vebose logging on travis, to see about strict mode
Cache the config cache files prefix

No pun intended.

This micro-refactoring step will be required for introducing
functionality that requires to know the config cache files' naming
pattern.
fs: Add dir_size() function to obtain the total size of directory's contents
Add functionality to clean or purge the cache to game_config::config_cache

Cleaning the cache removes all stale cache files (files that do not
match the current cache's naming pattern), and purging removes
*everything* in sight in the cache dir.

Ideally we would clean the cache every once in a while without asking,
but for now there will be a user-controlled option to allow doing this
by hand.
gui2/tgame_cache_options: New Preferences subdialog for cache management

It allows the user to browse to the cache (using a desktop API call),
copy its path to clipboard, clean the cache contents (deleting stale
files), or purge it entirely.

This is ideal for people sticking to the same cache dir for very long
and thus keeping content that was generated by previous versions of
Wesnoth they might not even use anymore. Purging the cache might also
aid troubleshooting (although there is a --nocache switch for that too).

The dialog also makes Wesnoth slightly more transparent about its own
disk usage, information which may not be readily accessible to people
without the technical know-how to locate a hidden directory.

For now it's accessed by pushing a button in Preferences -> General,
even though this is not ideal since it is actually Advanced Preferences
material given the nature of the cache. Unfortunately, the Advanced
page's layout is currently monopolized by the advanced preferences
options and I'm not interested right now in solving that UI design
puzzle; it will have to wait, much like the Paths dialog has done and
continues to do for 1.12.
Merge branch 'feature/cache-manager'
remove unnecessary include
Merge branch 'master' of git://github.com/wesnoth/wesnoth
gui2/tgame_cache_options: Add to GUI2 tests
Merge pull request #207 from aquileia/VC_update

Fix VC and OpenMP build
Don't lock controller when 'use map settings' is unchecked.

This partially fixes #21978.
Update VC project