C++ Regression Tests

The main set of C++ tests currently performed by the regression test suite is concerned with symbol lookup. Individual tests are copies of the code from the C++ specification, mainly clause 3.4.

Most of the failing tests fail because they haven't been implemented yet, i.e. there isn't even some expected output to compare against. As the SymbolTable module is completed, these tests should eventually all be passed

Further, more tests should be added that cover other aspects of the parser, such as type analysis.