Make console error handler no longer a static class.

Not using static means there are fewer global symbols and
configuration/use will eventually be simpler.
Clean up ShellDispatcher.

It no longer needs to work around consoleHandler being undefined. If
people are negligent and remove the error handling in the app/config
then they should be left to their own devices.
Make ErrorHandler use instance methods instead of statics.

Make the web exception rendering use instance methods instead of
statics. Update tests and code. Now that exception and error handling
are one set of configuration options prefix some of the settings.
Update doc block for ErrorHandler.
Remove now useless method from Configure.
Update error configuration in App skeleton.
Update app/Config to include all options.
Fix incorrect error handler being active in tests.
Fix return code in ShellDispatcher.

If a shell returns false the exit code should be non-zero.
Remove Controller::appError()

This vestigal method from 1.x is no longer necessary. The current
exception/error handling tools are very flexible and this third way to
do things is confusing and not necessary.
Start extracting a base class for error handlers.

Use a template method pattern to make error handlers consistent, but
provide a way to customize the displayed output based on the
environment.
Start moving ConsoleErrorHandler to use new base class.

Update code and tests for ConsoleErrorHandler to work with new template
method and base class.
Extract base class for exception rendering.

Extract base class + template method for exception handling, implement
it in both the console and web error handlers.
Fix ConsoleErrorHandler not exiting properly.

Implement a _stop() method that allows console exceptions to exit with
a non 0 code to indicate failure.
Fix coding standards errors.
Add missing doc blocks.
Remove duplicate stack traces in ConsoleErrorHandler.

Now that exceptions are logged a stacktrace is dumped to the logs, it
does not also need to be printed to stderr by the error handler.
Add missing return false.
Fix mistake in error handler docs.
Convert switch to array lookup.

The array lookups are simpler to read than the switch was.