GRIM: Use exact string search when searching for shadow sectors.

Fixes shadows in set st.
GRIM: Test model center position instead of origin in shouldDrawShadow. Fixes #741
MATH: Make inverseTranslate and inverseRotate methods of Matrix4 const.
EMI: Allow vertices to be associated with multiple joints.
EMI: Allow nil to be passed to volume in PlayLoadedSound
EMI: Add support for clamping sprite textures and repeating other textures.
GRIM/EMI: fix compiler warning

- remove unused variable
Merge pull request #910 from JoseJX/FixGLTextureParams

EMI: Clamp sprites, repeat other textures.
Merge pull request #930 from Akz-/grim-shadows-fix

GRIM: Shadow fixes
Merge pull request #932 from Akz-/emi-skinning-fix

EMI: Fix vertex skinning
EMI: Free more memory properly
GRIM/EMI: Do not check if _chores is null as it does not matter
EMI: Remove doublefreeing of materials.

I think there are cases where things are not all freed, but something else
is going wrong causing issues here.
DEBIAN: disable enabling shaders for now
GRIM/EMI: Cleanup

- add override to overridden functions
- make sure that all overridden functions are virtual
- make local functions protected
EMI: Clear depth buffer before starting to draw the Overworld

- all actors of the Overworld should cover any non-Overworld drawings
- Overworld actors need to use the depth buffer so that e.g. the
pause screen is drawn above the inventory

- this fixes issue #927 (inventory is drawn above background of pause
  or menu screen)
EMI: Change frustum parameters for Overworld actors

- lower the distance to the near plane of the frustum for Overworld
  and change the other parameters accordingly

- this makes the following actors visible:
 - background of directions to Pegnose Pete's house (issue #869)
 - Murray in the murray_go easter egg
 - the trophies during the diving contest (upper left corner)
 - the screenshots for the save games (still with the wrong texture)
Merge pull request #933 from chkr-private/sprite-fixes

EMI: Various Sprite/Texture fixes
GRIM/EMI: Cleanup
BUILD: Engine data and theme files are in Windows executable.
EMI: GetActorPuckVector should return nil for actors that have never followed walkboxes.

In Lua, The wear chore of dumbshadow.cos is only started if GetActorPuckVector returns a non-nil value. In the original game GetActorPuckVector seems to always return nil until a call is made to SetActorFollowBoxes.

This fixes the candles not appearing in the set gmi. The original Lua code only starts the candle animation if the candle actor is not playing any chores. Previously the wear chore of dumbshadow.cos was playing, so the animation was never started.