bug fixes + start to change how the macro engine works