restored the old error behaviour, especially in the frontend app

When an exception is thrown, the page execution stopped here and displayed the
error. With the previous implementation, nothing happened in the development
environment and the dispatcher went happily along and returned NULL for the
generated response (as it never anticipated that handleControllerError() could
*not* die away). This led to the frontend app trying to call send() on a
non-object and thereby triggering another error, which shadowed the real problem.
This change first of all makes handleControllerError() die away again.

The second change to the development handler is to ensure that calling
handleException() does not break the page output. Temporarily, there was an
`print $e` in the handleException() method, but this caused layout problems in
the backend (as the backend calls handleException() and then goes on to render
its own error screen, the output if the (development) handler is not nice).
Depending on the exception passed to aaaauuuggghhhh() and performing the output
there is not an option, as there could be many caught Exceptions in one page run
and we want to display *all* of them. That's why handleException() collects the
output and leaves their printing to the actual script death method.

--HG--
branch : 0.9
extra : rebase_source : 4da0ec2c6cf0e0a2fe13502db1d1fc7c3ac3abbe