removed dependency on boost::thread