fix comparing symbols and improve semantic error output
allow newlines after commas
more static asserts for AST node validation