@zaphod42 Do you have any ideas about other ways we could handle this kind of dynamic dispatch in Ruby?  The meta-programming here seems a bit magical when I read it over the first few times.