Сергей, но ведь Stores, вообще говоря, завязан не на динамическую модульность, а на метапрограммирование... Ему безотносительно, где находится тип, экземпляр которого он считывает - в отдельно лежащем модуле, подгруженном динамически, или в статически прилинкованном модуле - главное, чтобы модуль в том или ином виде присутствовал в системе.
Поэтому стоит разделять разные понятия - модульность, компонентность, метапрограммирование... Они связаны друг с другом - и очень плотно, но модульность можно выделить из этой тройки и рассмотреть отдельно.