EMI: Change drawing order of faces

If multiple faces of one model are referring to the same triangles, let
them overwrite each other so that the latest one will be visible. For
this purpose glDepthFunc is changed from GL_LESS to GL_LEQUAL so
that subsequent drawing attempts for the same triangle are not ignored by
the depth test.

This fixes the issue of the colored leg of the monkey bot in the end
scenes: the leg is drawn using color maps by the first face and using
textures by a following face.
MYST3: Movies need to be drawn in reverse add order

This fixes MATO7 and MALL18
MISC: Fix typo in comment
TINYGL: rename variable to get rid of warning
EMI: Remove setYaw.
TINYGL: Added a first draft of the maths classes.
TINYGL: Removed all the use of the old classes of Vector and Matrix.
TINYGL: Added a few utility methods and operators.
TINYGL: fixed almost all the issues that arised after the refactoring.
TINYGL: fixed an issue with vertices transformation and matrix-vector multiplication.
TINYGL: fixed a problem with shadows.
TINYGL: Done several optimizations to the maths code.
TINYGL: Done some optimization by moving the logic inside the class Matrix4.
TINYGL: Done some more optimization on maths code.
TINYGL: Last optimization batch, performance comparable to the previous version.
TINYGL: Changed the way vertices are transformed, increased performance (now it's comparable to the previous version and sometimes it performs even faster).
TINYGL: fixed an error in matrix transpose method and optimized the code a little bit more.
TINYGL: Modified changelog accordingly.
TINYGL: Fixed a bug that prevented the code from compiling in clang/gcc
Merge branch 'math-refactoring-2' of https://github.com/subr3v/residualvm into math-refactoring-2