EMI: Make SCXTrack behave like MP3Track in regards to isPlaying
EMI: Make sector name comparisons match GRIM and EMI. Fixes #873 and #895.
GRIM/EMI: Fix bridge height check. See #842
GRIM/EMI: Remove bridge length check.
MATH: Return false in intersectLine2d if lines do not intersect.
GRIM/EMI: Always walk towards the target position in a straight line if possible.
GRIM/EMI: The walk destination may reside in multiple sectors, so don't choose a single end sector.

This fixes Elaine walking through Guybrush at the end of the first cutscene in the set gme.
EMI: Implemented dynamic lighting for models.

Lighting is done by calculating vertex colors in software, since the attenuation model used in EMI cannot be simulated with OpenGL fixed function lighting. The original game does the lighting this way as well. Ideally for the modern shader-based renderer a shader would be used for this instead.
EMI: Only draw models for actors inside the view frustum.

This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
EMI: Implemented SetActorLighting.
EMI: Precompute the vector of enabled lights and the hasAmbient flag.
EMI: Avoid square root in light distance check.
EMI: Preserve light color when clamping to [0-1] range.

This makes the light color match the original more closely. The effect of this can be seen for example on Otis' shirt in set mel as well as on the contract on Elaine's table in set gmi.
Merge pull request #920 from Akz-/emi-lighting-rebase

EMI: Implement lighting for OpenGL and TinyGL renderers
Merge pull request #926 from Akz-/pathfind-fix

GRIM/EMI: Pathfinding fixes
Merge pull request #883 from JoseJX/FixPPH

EMI: Fix sector names that are substrings - Fixes #873
Merge pull request #907 from somaen/fixPS2Audio

EMI: Make SCXTrack behave like MP3Track in regards to isPlaying