a key thing i missed with mono.cecil is that you *can* use it to generate in-memory assemblies. its generally very file-oriented, and most examples/applications operate on files, but you can write cecil assemblies to memory streams and read them right back to use the new types!