move AST to its own subdir and namespace
begin cxx generator