Calls a three-staged hook:
        
        1. ``"pre_"+name``
        2. ``"_on_"+name``
        3. ``"post_"+name``

def trigger_staged_hook(self, name, *args, **kwargs):
        """Calls a three-staged hook:
        
        1. ``"pre_"+name``
        2. ``"_on_"+name``
        3. ``"post_"+name``
        
        """
        self.trigger_hook("pre_" + name, *args, **kwargs)
        self.trigger_hook("on_" + name, *args, **kwargs)
        self.trigger_hook("post_" + name, *args, **kwargs)