Allow coloring of tools, made Tool Recipes Itemstack sensitive

This allows adding a material ID to a HashMap to make that material get a colour overlay of a specified colour.

Additionally, Tool Recipes are now ItemStack sensitive to allow addons more customizability in their recipes.