Default timeout_after and timeout_at to None
Use utils.wait_until in ThreadPool.join and give ThreadPool.join timeout_after and timeout_at parameters