Merge pull request #808 from inguin/sprite-scaling

GRIM/EMI: Fix sprite scaling with non-native screen resolutions
EMI: Fix costume unloading

- use the costumeName instead of a pointer to the costume object to
  check, whether the current costume matches the requested one
- this fixes an uninitialized pointer read
EMI/GRIM: Fix unaligned sprites and use correct axis

When an actor which is drawn using sprites moved due to water float
effects and if that actor uses multiple sprites, then these sprites are
not aligned (e.g. in the very first scene, the ship in the background is
not shown as one piece).

That is because the sprites are first rotated and then moved to
the correct position. It is necessary to first move them to their
correct position on the actor and then rotate the whole actor.

Additionally, non-overworld sprites needs to be rotated by the Yaw axis.
Otherwise the ship did not rock but only moved vertically.

This changes fixes:
- the ship in the background in the first scene
- the clock hands in the swamp
EMI/GRIM: Allow integer arguments for MakeSectorActive

The first argument of MakeSectorActive can be either a string or a
number. If a number is used by the lua call lua_isstring will also return
true (see engines/grim/lua/lapi.cpp) and so the correct code which
handles the integer case is never called.

This patch reverses the order of the tests via lua_isstring and
lua_isnumber.

In EMI this fixes the following:
- big monkey head on Monkey Island stays open even after set or setup
  change
- the lights in the bank on lucre island stay off until Guybrush turns
  them on
- shadow of Pegnose's nose is visible in close-up camera view
Merge pull request #812 from chkr-private/sprite-fixes

EMI/GRIM: Fix unaligned sprites
Merge pull request #816 from chkr-private/sector-fixes

EMI/GRIM: Allow integer arguments for MakeSectorActive
BUILD: Fix a typo in configure help

Thanks Botje for noticing
MYST3: Add support for the 1.2 NL version

Botje's version
EMI: Fix crash when restarting the game

ResidualVM's EMI patch installs a custom version of system_prefs.loadprefs
which maps config reads to GetResidualVMPreference() calls. The original
system_prefs.cfg is saved and used as source for default values. When
the custom loadprefs function is called a second time (i.e. when using
the New Game option in the main menu) any config read results in an
endless recursion.
MYST3: Make sure to use the shortest direction when animating

Thanks klusark for noticing the issue in TOHO 5
BUILD: Refactor Android build
ANDROID: Cache memberlist in Archive

This reduces startup time on my HTC One from 37 seconds to 8!
ANDROID: Aspect ratio correction
ANDROID: Set target API level to 15; fix warnings
ANDROID: Support OUYA platform & controller
BUILD: add with-opengl-shaders
GRAPHICS: Introduce GfxOpenGLS
GRAPHICS: Emergency font [OpenGLS]
GRAPHICS: Text drawing [OpenGLS]
GRAPHICS: Support Smush [OpenGLS]