Has anyone reviewed this? Current plan: - Dan merges first. - I update models_refactor_2 to be based on this code, and fix any clashes - I shout at all of you to review my code. - Repeat - Merge - Update the models used by Dan's declarative plugin to use my models.