Crafting module part 1
first pass in merging old code to new code