C++ target fixes/changes/improvements

- Some Lexer fixes (old C-target code ported to C++)
- "Run-time headers" included (and modified)
- Method names now use camelcase
- Initial support for AST creation