handle damaged vs undamaged by returning routers interested in both, and letting them decide.

caching for providers,crafters,extractors and qsort is now complete
cache only updated once per tick, so items will take 1 tick to be
noticed, rather than the same tick :) ... such is the horible price of
caching ...
(actual deliveries/extracts are still done vs real inventories, so
nothing lost there)
Add check to getDistanceTo
Null check
Access first, check for null later, Whatever.
Fix supplier logic
And logisticsmanager
things other than Providers are passive sources

(also, basic pipes don't need to add themselves to both specific and
general intrestes when default routing)
chassi should handle ISpecial