use Throwable.toString to report unhandled exceptions

- Add toString(sink) overload to Throwable, so that
  it can be used without the GC.

- Rewrite string toString() in terms of the sink overload.
  Thus toString(sink) becomes the preferred method to
  override in derived Throwables.
kill console