still broken: various derp fixes .. should not write/commit code at 1am.

handle module sinking matching undamaged items.
modules which care about undamaged matching should declare an interest
in the undamaged varient of an item.
if they want do declare an interest in an undamaged varient of anything
in their attached inventory, interestedInUndamagedID() returning true is
the correct way to do that.

don't filter out firewalls from the matching list.
rename validDestinations to validSources