Implement pretty printing

Implemented a new pretty printing class for ASTs. This allows TestParser
to verify that a program's syntax was properly parsed by the parser.