Was failing due to error: incompatible function pointer types passing 'void *(void *)' to parameter of type '_beginthreadex_proc_type' (aka 'unsigned int (*)(void *)') [-Wincompatible-function-pointer-types].
Removes dependency on pthread library and uses fast Slim Reader/Writer (SRW) locks for NSLock/NSRecursiveLock/NSCondition/NSConditionLock as well as all internal locks. Adds GS_MUTEX_*() macros in GSPThread.h, that are being used for all internal locking instead of pthread APIs.
Also adds support for thread priorities on Windows, fixes method signature of +[NSThread setThreadPriority:] to match Apple platforms, and adds error handling in same method.