I can't recover from a Model Loop

(Bug, Closed -> Fixed, Priority: Critical, Test Status: No automated tests yet , Reported By Justin du Coeur, )
Summary: If I manage to create a Model Loop -- a circular dependency -- there is no way to recover, because things crash too early.
Fix by dint of catching this more explicitly and being smarter about it in the client.
Note the related It is possible to create a Model Inheritance loop -- we should prevent this situation from arising in the first place. But this is a start.