Added a proper system for FurnaceRecipes.
Allows mods to further specify smeltingTime and per-player experience values or anything else they desire.

Also adds some caching to not search the recipe list multiple times each tick.