Further AST refinements

Assignments are now expressions, constants are now identifiers.
Use Text.Parsec.Expr for expression parsing
Remove old parser