Lock options on Compiler classes and make them read-only.

Rework API to work better with single-inheritance.
Replace uses of tracuer.compile with node api.js compile.

Change the default for option moduleName to false
still wrong indentation here and a few more places in this file