The way I was allowing for parent draw method invocation was incorrect, since a call to base.DrawFoo on the managed side would not invoke parent->draw_foo on the native side until the managed this.DrawFoo returned. Calls to base.DrawFoo now immediately invoke parent->draw_foo as expected. I also cleaned up the code formatting in the generator, building on the textwrap module.
Defined actual classes for the parser, methods, arguments, and native+managed generators. These classes have a number of utilities useful for generation. The previous code generator iteration was a sloppy unreadable tangled mess, and I need to do delegate generation now. Doing that without a reorg would have made me cry.