@Darren:

Actually, you can declare an attr in the module and it will work as an
instance variable in the class it's mixed in. For example:

module QAPrototype
  attr :_methods_added
end

That's what I did.

Also, print does work with one liners, but you need to flush out the
buffer each time you print the one line with
<code>$stdout.flush</code>. (Thanks to to cool folks in #ruby-lang for
that info.)

I'm still working on my solution (I've had quite a busy weekend) but
I'm having some trouble figuring out how to remove the methods I've
added... It's odd: method_missing is called for things like
#class_eval and #remove_method. O_O So, I might be doing something
wrong just adding the methods in #instance_eval.

I'll work on it some more and post it later today.

M.T.