Iterate pattern for positional recipe
Remove pattern decoding in PositionalRecipe for now, accept matrix directly
Implement findMatchingSlots in PositionalRecipes, simple test case with two horizontal ingredients
More positional recipe tests (passing)
Use 2x2 crafting grid for tests
Add craftingGrid3 for 3x3 grid, rename original to craftingGrid2 for 2x2 grid test
Allow CraftingThesaurus undefined to match undefined; fixes 2d positional recipe match test
Add positional recipe craft
Add positional recipe leftover crafting test
Add pickaxe crafting test (positional 3 rows)