Refactor, removing the before_hooks and after_hooks instance methods
Refactor hook execution for symbols
Rename call_ methods to run_ methods in the hooks module

This coincides better with the Interactor#run methods and with Active
Record's use of "run" with validations and callbacks.
Unit test context rollback
Make the context available from raised failure

This is useful when an interactor is used in a background process or
other situation where the interactor needs to fail loudly. Having the
context available from the failure itself is useful for debugging.