Thanks for agreeing to review this, and sorry it took so long to finally get it ready to go.
The changes include the beginning of work on
DM-9195, but the constrainedPhotometryModel doesn't actually do anything right now, though I believe it's harmless to leave in as I will tackle DM-9195 immediately after this.
I squashed the commits quite a bit, but it's now at the point where it's a lot more work to squash them in a semi-reasonable fashion. Please let me know if you'd rather I did more commit flattening or not. It includes quite a bit of refactoring (both variable renames and base-class creation/reshuflling).
Jenkins run here: https://ci.lsst.codes/job/stack-os-matrix/25544/