Avoid duplicate method lookups

->can() returns a reference to the method, so call that directly,
instead of looking it up again.
Optimize ->formatting

This is a very hot method, so avoid unnecessary @_ unpacking and look up
overrides in a hash rather than using if/elsif.
Inline ->formatting() into to its sole caller
Collapse two tr/// operations into one