Final version of the compiler.

Commit before submission.