Setup size of backgroundsurface depending on rerender distance.

When animated_tiles is switched off, the background will be rendered
into a static image and only renewed, when the player has moved a certain
distance specified in 'movedistance_to_rerender'.
Use this variable as well for the dimensions of the background surface.

Fixes #333
Merge pull request #338 from stefanbeller/master

Fixes #333
Enumerate joystick buttons
Use ACCEPT key to interact with NPCs
Add joystick support for NPC interaction

To prevent some cases of input overlapping, joystick button locking
(similar to keyboard key locking) has been added to the InputManager.
Use JOY_CANCEL to close menus
Use Accept key/button to trigger nearby events

* In checkNPCInteraction(), only lock the Accept key if an NPC is found.
* Fix a crash when trying to execute NULL events.
Use Accept key/button to pick up nearby loot
Attempt to fix broken saved HP/MP values

Saved HP/MP values need to be checked for validity *after* item bonuses are
applied, since items can boost the maximum HP/MP values.
Don't set respawn state to true when initializing the Avatar

Otherwise, saved HP/MP values are broken because StatBlock::recalc() is
triggered when the player respawns.
Merge pull request #341 from dorkster/bugfixes

Attempt to fix broken saved HP/MP values
Fix transform_duration being ignored for transform powers
Switch effects and passive powers when transforming
Merge branch 'bugfixes' of github.com:dorkster/flare-engine into bugfixes
Merge pull request #344 from dorkster/bugfixes

Fix Transform power bugs
Merge pull request #339 from dorkster/joystick

Usage of Accept key/button for object interaction
Merge branch 'master' of https://github.com/clintbellanger/flare-engine
Reflavor magic wand