reworking to be a stack based compiler with IR then source transformations