Added a custom class for smeltery inputs for better external readability
Fix gravel ore being harvestable without shovel.
Have the IToolPart implementations actually respect the IToolPart API. (-1 on invalid material)