ANDROID: Modify the touchscreen controls to make Manny run
ANDROID: Add control buttons on the Android screen

ANDROID: Removing some logging
ANDROID: Add resources
ANDROID: Add an emulatedKeypress function in the main Activity
ANDROID: Remove unused htc_fail and shake_offset fields
ANDROID: Factor event pushing into pushEvent
EMI: Handling of invalid bone names

Two animations (guy_puton_cap, guy_holdstickystuff) contain bone names
which which don't match any joints. To avoid that the holding actor is
drawn with a wrong orientation, ingore the unknown bone names when
running the animations.

Skeleton::getJointNamed() will now return null for unknown names.
The original behaviour for Actor::getWorldPos and
Actor::getRotationQuat is kept.

This patch fixes the problem, that Guybrush is "lying down" once he
holds the bottle of glue.
GRIM: Don't bother checking if the value returned from new is nulll

It can never be null and will throw an exception if it can't allocate the
memory
EMI/GRIM: Fix rotation of attached actors

Use matrix multiplications to fix the rotation for attached actors:
- calculate the final transformation matrix recursively for attached
  actors (instead of using getWorldPos and getWorldRot)
- use a different order for building the quaternions out of the Euler
  angles
- changed handling of camera position (just apply the rotation of the
  camera, the (inverted) position of the camera and the position of the
  actor
- no functional changes for GRIM
- no changes for drawing in overworld

Code simplification for GRIM:
- no need to use _currentPos in calculations for GRIM since it is
always (0, 0, 0)

This fixes:
- the rotation of any items Guybrush is holding in his hands
- the handling of the pole when using the raft in the swamps
- getting the bananas with the banana picker
EMI: Fix position of attached actor

When attaching an actor to another one, set its local position
so that its final position (position of the parent actor + the
local position) remains the same as the final position before
it was attached.
BUILD: Conditionally include shaders
MYST3: Introduce shader-based renderer
MYST3: Move OpenGLTexture into separate file
GRAPHICS: Update system_headers.h for regular OpenGL
MYST3: Separate renderers into separate classes
JANITORIAL: Remove g_ prefix from instance variables
MYST3: Support Text rendering [OpenGLS]
MYST3: Dialog movies are also localized
MYST3: Don't needlessly center the mouse when changing nodes
MYST3: Reset viewport in menus