@pezra it's quite slow in Rubinius, from what I understand, although that's not really the primary motivation. My discomfort stems from the fact that `ObjectSpace` is a very deep level of introspection in the Ruby interpreter and my understanding is that the intent isn't to provide functionality for use in everyday library or application code. I'm particularly concerned about what will happen in class-reloading scenarios.

How about this—have Cequel::Record keep track of what classes have included it. Probably best to just hold on to the class names (and it seems fine to ignore anonymous classes) in order to avoid any sort of reference leak. Then for this patch, we can just require everything in `app/models` and then grab all the `Cequel::Record` implementations from that list. How does that strike you? Or is it just `ObjectSpace` by other means?