3rd example

Some rough ideas on how to implement extensibility