Add ToolBuildEvent when determining parts for a tool

Called before the parts are evaluated by the ToolBuilder. Allows to replace itemstacks used in the tool crafting with other parts, like replacing sticks with wooden tool rods.
Also add Oredict-Support for sticks.