Your toolbox, since the free lunch is over: a C++ library for multi-threaded programming