Introduce new Map class

The new class Map deals with loading a map.
The game related stuff, such as rendering, dealing with events and such
is left to the MapRenderer class, which inherits from the Map class.

This will later on be interesting for randomly generated maps as we need
to load some kind of Automapping maps to nice up the schematic.
Use chance_flee for enemies

Closes #103

This allows for improved ranged enemy behavior. A roll of chance_flee
will determine if the enemy will attempt to move to a safe distance
(threat_range/2). Once the enemy has reached that distance, they will
not pursue the hero. When the hero gets close to the enemy, it will
either try moving to a safe distance again, or it will pursue the hero.
Make WidgetSlot configurable to have continuous activation or not.
Merge remote-tracking branch 'mainline/master' into refactormaps
Merge pull request #682 from igorko/bugfixes

Make WidgetSlot configurable to have continuous activation or not.
Don't pass input state to MenuItemStorage

This enables us to click/activate slots at a point other than the mouse
cursor. It will be useful for working with these slots on mouse-less
configurations.
Render Maps correctly on disabled animated tiles as well
Merge pull request #683 from stefanbeller/refactormaps

Split MapRenderer into Map and MapRenderer class
Remove unused variables.
initialize member var in ctor list
EffectManager: Add fear to =operator
Remove initialisation of unused var as well
Merge pull request #685 from stefanbeller/removeunusedvars

Remove unused variables.
Rename mouse parameter in menu functions to position
Update chance_flee comment in StatBlock
Merge pull request #684 from dorkster/input_state

Don't pass input state to MenuItemStorage
Merge pull request #678 from dorkster/chance_flee

Use chance_flee for enemies