Bsideup feature/macro

Updates to the AST matcher