Support customizable view EXCEPTION_HANDLER

Add `api_settings.EXCEPTION_HANDLER` to support custom error responses.

Fixes #907.