I see. That makes sense then, and this class can be refactored to work like that, but it would take a good amount of elbow grease.

FWIW, maybe I am reading this the wrong way, but it looks like all the code in the models directory implements somewhere between some logic and extensive logic. I'm fine with whatever expectations we have, as long as they're consistent and clearly documented. Perhaps a readme for developers adding code here would go a long way to clear up whatever ambiguity exists?