making the queue thread safe until such time that the (unnecessary) potential for concurrent access can be resolved
tweaking the dependency cycle handling