Basic Crafting, Recipes

1) Added Recipes. These objects describe the ingredients needed to make
a product, the product to be made, and a hook to do extra processing
when creating: recipe/craft()
2) Added Recipe_Manager. This object instances all recipes in the object
tree, and then stores them for later look up. It also handles craftng.
3) All tiles now have a resource variable. This is a string which
translates into the needed ingredient for crafting recipes. For example,
a lump of gold and a gold sword could both have the resource of "gold".