Use getRoutersInterestedIn in assignDestinationFor
Crafters can now be used to fill part of a request
Just use the partial tree to do partial requests
Reuse generateRequestTree and recurse to fill out failed instead of duplicating generateRequestTree and checkCrafting
Use partial requests for rerequesting lost items
Also use it for liquid and builder supplier partial requests
Extend "Supplier failed" trigger to builder and liquid supplier pipes
Don't build missing branches if log is null
If a sat gets materials, don't check distance to sources from the crafting pipe
And suddenly requester is always treeNode.target
we don't use validDestinations here anymore