Adds support for trailing return removal.

Also includes some minor refactorings.
Adds the compiled .js files.