Modify root AST classes to interfaces

Change the root AST classes (Exp, Statement, Type, ClassDecl) to
interfaces.

Also removed some unnecessary null checks in the PrettyPrintVisitor
class.