подожди, тебе не нравилось в других решениях то, что они регают 100500 классов и ты не можешь понять потом, из какой они dll? и ты вместо неймспейсов решил ввести лишнюю сущность, решить кучу проблем как унаследовать плагины, как скрыть от разраба, теперь исправляешь косяки, вытекающие из двух первых пунктов (запретить разрабу наследоваться виртуально), и считаешь это решение более изящным, чем просто поместить плагин в per-dll пространство имен и не ебать мозги ни себе, ни другим?