Added ability to throw exceptions for handling later and to disable the catch-all entry point