Directed to Cliff,
I was just reading a reply you made to a post concerning "fully encapsulated modules." In it, you state the following:
You need another actor that is responsible for managing the modules. Much as the Model keeps a map of Proxies, this actor keeps a map of modules. This actor also needs to be able to take configuration from the other actor and use it to create factories for modules, create (or defer) loading of each module, as well as creating or deferring some configured number of instances of each module once loaded. It should keep the factory on hand to lazy load configured modules.
Who would that actor be? In the .NET library I wrote, the 'ModuleLoader' resided in the shell. That seemed to be the best place for it. Would you agree? Perhaps the loader should be its own module, except that, unlike other modules, it's not obtained from a file directory. It's loaded in the same way that modules are loaded in your [wonderful] Modularity demo.