error handling
implemented basic making algorithm, still utterly untested