Replaced the original critical section use with localised (and portable) mutexes.
Removed the Sleep() warning.
Sped FastMutex use up by referring to Sleep() directly (FastMutex only exists for Win32, so this one use case does not need to be portable).