added ThreadPool class with context manager, missing unittests