GRIM/EMI: Stop frame time while debugger is open.
EMI/GRIM: Handle normal mode and draw mode in separate virtual methods.
EMI: Improve pause handling

Both EMI and Grim call RenderModeUser when entering the menus or dialogs,
but EMI does not use special "blast" commands to display text or images,
so we cannot suspend regular screen updates. The current implementation
does not switch engine modes in RenderModeUser, which has the drawback
that the frame time is not stopped during pause or menu.

With this patch, EMI handles draw mode like normal mode with frozen frame
time.
EMI: fix costume handling

- make sure, that if a costume is not found
in the existing costume stack of an actor
to try to load and push it
EMI: fix unstoppable sound

- if a pre-loaded sound is played again once the previous one is still
  playing, it can't be stopped
- there is only one sound handle, but the mixer would create two
  channels (indexed by the sound handle)
- so the channel created first could not be addressed any more
- stopping the sound (per handle) would not work

current work around: don't start one handle twice

other possible solution: make sure the mixer finds all channels which
play one handle (may require changes to common scummvm code)
EMI: fix MP3Track::isPlaying()

- previous implementation always returned true
- check whether the mixer is actually playing the track
EMI: fix VimaTrack::isPlaying()
EMI: stop all PoolSounds when changing the set

- this fixes the problem that the fish sound was continuing
even after leaving the water without catching any of the fish
GRIM/EMI: Count pause/unpause calls of LUA scripts

Scripts that have explicitly been paused must not be resumed when
pause_scripts and unpause_scripts are called, e.g. when opening the
inventory, pausing the game or changing sets.

This patch splits the existing paused flag in two separate ones:
 - LState::all_paused is controlled by pause/unpause_scripts (plural)
 - LState::paused is controlled by pause/unpause_script (singular)

For compatibility with Grim savegames both flags are stored in a single
byte, with bit 0 having the same meaning as the former boolean.