significant changes to the AST; beginning substantial implementation of the AST