-The mutexes and guards are both standard now, so removing those and
dropping in the C++11 equivalents
-There is also std::thread, which can mostly replace ThreadSpawn
-NOTE: Need to look at the places where std:🧵:native_handle
calls are made to make sure that there is no undefined behavior after
using the pthread calls to kill the threads. std::threads must be
detached or they will try to close an invalid handle at destruction.