Method modifiers are a convenient feature from the CLOS (Common Lisp Object System) world.
In its most basic form, a method modifier is just a method that calls $self->SUPER::foo(@_).
I for one have trouble remembering that exact invocation, so my classes seldom re-dispatch
to their base classes. Very bad!
Class::Method::Modifiers provides three modifiers: before, around, and after. before and
after are run just before and after the method they modify, but can not really affect that
original method. around is run in place of the original method, with a hook to easily call
that original method. See the "MODIFIERS" section for more details on how the particular
modifiers work.