Add a patched version of ast.dump, skeletons of functionality

Add a patched version of ast.dump which  shows ast indented and with the atypical type annotations.
Add skeletons for type system, typed ast and type checker elements.