A library providing a Terminable Thread Manager called TerminableThreads<T, N>
All functions used in threads that this manages use a flag to signal termination
This was designed more for learning that practicality, but I needed this functionality in another project that I was working on at the time