There was a question about instance_eval that I didn't answer too
well. Calling instance_eval changes the reference of self to the
object that it is called from. I found this blog post that does a
really good job of explaining it.
http://www.dan-manges.com/blog/ruby-dsls-instance-eval-with-delegation