* Add a boolean debug parameter to every interpret() in all statements,
  expressions, and variable-declaration.
* Provide newDebugger() on DynJS as a subclass of newRunner().
Add support for providing an Executor to the Runner
so that in the case of debugging (or other un-thought-of use-cases)
the user's client thread may remain avialable for debuggering.
Re-arrange DebugRunner and add Debugger.  Provide a DebugListener for
events.

Apply hooks to all relevant statements for debugging.