got rid of the forwarding array and refactored the code to be more simple. Need to add scheduler restoration hooks, and traversal up the replacement worker chain