Cleanup the implementation of "safe" actions

I think the base class was doing a little too much, and
the redirection and obfuscation really confused @ctwiz and myself.

The best approach here is to let the Action classes define whatever
method they want, and it will be called.

As an added benefit, you can now return a proc which will be called
in the context of the cinch bot, which means you have access to the
various helpers (eg: Channel, User) that we lost when I refactored
this a week ago.