Install dispatcher in semantic analyzer.
Use the dispatcher.

* Fix some typos and naming issues.
Add stubs for semantic analysis.

* Move typedef analysis.
Fix identation.
Fix errors detected by pylint.