C++11 threading

This migrates everything in ```hsThread``` (except ```hsSemaphore```) to the C++11 ```std::thread``` API, which is significantly simpler and easier to port/maintain.  Note that the reason I didn't port ```hsSemaphore``` is that it uses named semaphores for inter-process communication -- something which is not currently supported by C++'s threading API.