EMI: Pass a file path string instead of a file stream to SoundTrack::openSound.
EMI: Clean up JMM file parsing.
EMI: Fix signed/unsigned mismatch warning.
EMI: Initialize EMISound instead of iMuse at engine startup.
EMI: Make callback FPS a constructor parameter of EMISound.
EMI: Free channels that have finished playing.
EMI: Move initialization of sound effects to EMISound.
EMI: Add missing include.
EMI: Free the sound channel immediately if sound track initialization fails.
EMI: Replace asserts with warning when trying to change parameters of a sound track that doesn't exist.
EMI: Do not expose the sound handle in SoundTrack.
EMI: Fix crash if a .jmm file does not contain a jump cue.
EMI: Lock when channel state is modified from the game thread.
EMI: Update _curMusicState also when state 0 is requested.
EMI: Respect balance and volume parameters when starting a voice.