I'm curious what issues you've run into with regards to memory footprint. I've not seen anything like that myself.
I have tried some simple benchmarks against two apps. One with a single subclass, and another with 3 subclasses. The one with a single subclass used 22M (RSS), the one with 3 subclasses used 23M (RSS).
This was running it with thin. The code is here: http://gist.github.com/187475