Calls self.run() and wraps for errors.

def _run(self):
        """Calls self.run() and wraps for errors."""
        try:
            if self.run():
                broadcaster.success(self)
            else:
                broadcaster.failure(self)
        except StandardError:
            import traceback
            traceback.print_exc()
            self._stop()
            raise
        except Exception:
            self._stop()
            raise
        return True