Remove setup in favor of before/after hooks

The new hooks are not evaluated until runtime, unlike the old setup
method which was evaluated during initialization.
Refactor Interactor#call_with_hooks

This helps pave the way for "around" hooks
Move hook logic out into its own module
Add the ability to specify method names for before/after hooks
Merge pull request #55 from collectiveidea/hooks

Add before and after hooks