Format as a full extension instead of just helpers.

This is prep for defining custom error handlers.
basic custom error handling
request-specific error handlers