Manual: fixed Speech.VoiceMode example
Updated build version (3.3.2.0)
Engine: < 3.2 games let assign empty loop in SetObjectFrame

Previously the game version was mistakenly tested against 2.72.
Engine: do not log out duplicate gfx modes
Engine: do not auto Unlock mutex on destruction

Mutex wrapper class should never automatically lock or unlock itself; it is not its task to control its own state like this.
There's not much sense in calling Unlock() in Mutex's wrapper's destructor, because if it was not unlocked in time, program will probably get in a deadlock anyway. On other hand, trying to unlock non-locked mutex may cause errors on some systems.
Moved C++ code version definition to a separate header
Editor: removed UpdateCPPVersion utility

This utility is no longer needed, because the AGS.Native.dll's resource script now shares same version constants with Engine, therefore will have them up to date all the time.
Merge branch 'master' into develop-3.4.0
3.4.0.1 alpha 2