added work_pool and minor fixes to id_vector