я знаю это больное место, но посмотрите на то, что уже стандартизировали в мире С++. модули, контракты, новые дженерики, у них своя memory model уже есть и поверх нее можно ad–hoc штуки хуярить как это делает фейсбук (foil, или как там называется их бибиотека) и гугл
Ток у них не лучший вариант модулей был выбран