proposal for the abstract syntax tree design. Hope it can be a base for further discussions.