Component for animation overlays based on inventory state

This tracks the `overlays` branch and serves as TODO list.

**To test, you will need fife git!** If necessary, use `--fife-path`.

Animation overlays
--------------------------
See [Animation overlays] (https://github.com/unknown-horizons/unknown-horizons/wiki/animation-overlays) wiki article.

Current status: test building is lumberjack in **pioneer** tier, test savegame [here] (http://up.unknown-horizons.org/f/?id=483&n=overlays.sqlite):
* [x] `InventoryOverlayComponent` template: defines (resource: (amount, overlay)) mapping: when `amount` of `resource` are in inventory, we should display `overlay`
* [x] displaying just one overlay: comment out addAnimationOverlay line in [inv.overlaycomp.] (../blob/overlays/horizons/component/inventoryoverlaycomponent.py)
* [x] couple with inventory: listen to storagecomponent inventory updates, trigger update calls where necessary
* [x] use max. current possible overlay: when 4 units are in stock while 0, 2 and 5 units have an overlay defined, use the one for 2
* [x] display multiple overlays for the same building (e.g. lumberjack input res: logs, output res: boards)
* [x] removing animation overlays
* [x] update overlay (supposed to be triggered on inventory change): remove old, add new
* [x] one instant update after loading savegames

Some more test images could be rendered for the brickyard, which is detailed in #2131.