Moved the ASTNodeVisitor to the 'ast' package.
Added and implemented a visitor for the 'Type' interface.
The typechecker method now returns a list of errors.
Fixed a bug: comparing types of variables failed. Replaced with .equals().
Added the sample from the course slides.