Fix expression parsing, and add support for parsing types and variable declarations.
Add pretty-printing for expressions and types.
Add support for logical and bitwise boolean operators in the parser.
More improvements to the expression parser, including function application.
Add ternary conditional operator and casting to the parser.