As an aside, it's worth noting that at various points the precedence order of plugins is backwards. e.g. look at `_prepare_contents` -- there, a later plugin gets precedence. If you used first() to implement equivalent functionality, the earlier one does. A standard registration mechanism means you don't have to reinvent dispatch every time and sometimes do it backwards.