Hi Craig -
Previously, we had no good solutions to the problems you mentioned.
I do think Spoon will put us in a better position to solve them. Specifically, it will help a lot to have completely unconstrained class names, to be able to transfer behavior between systems without using source code, compilation, or files, and to have multiple methods associated with any given method name.
I'm curious but how exactly does this help for modularity? Since I haven't used Spoon so far I don't really know what to look for here but it'd be great if you were willing to share a few success stories, or even if there aren't any yet just your reasoning about why you think this abilities are an important step.
Cheers, - Andreas