Scenario
KotlinPoet offers a very clean and generic way of "tagging" all builders and specs, so it is quite easy to add any additional data to a spec or builder (like metaData, configuration, parent-child hierarchies, ...).
It turns out that we could very much use this kind of feature for Strategies, Processors and Contexts, so we will add the Taggable interface to those.