parser: do not create redundant node
parser: allow any call as first argument to hash expression
ast: helper functions
frontend: partial semantic analysis
semantic analysis involving streams
remove dead code
frontend rename symbols.* to semantic.*
test: start-function selection and argument passing
semantic analysis: improve stream reduction