add 'var_ref' node to represent variable references as expression
prettier AST printer
tweak margin and length of a branch
fix a symbol name of 'function_call' and add traits namespace for AST nodes
constructor call should be distinguished from function call
parse function and procedure definitions