* Changed exit from throwing an text string to throwing
an Error-derived object encapsulating the exit status.
Then catch it in 'callMain' and return the status.
Enable this functionality by setting CATCH_EXIT_CODE in settings.js
This change allows the generated code to be processed by the
closure compiler. Without this change, commit
81f82a6a0d
prevents the closure compiler from running
(see http://code.google.com/closure/compiler/docs/error-ref.html#error).
This change should also slightly improve startup speed and reduce code
size.