Department Checklist

http://courtwright.org/stops/ has the rough idea of what I was going for, and this actually implements a real version.  Here's a screenshot of the top of the actual page: http://imgur.com/7P9d3QR

This is basically just a version of the volunteer checklist but for department heads.  It's a rough first draft, but it standardizes a lot of the automated emails we were already sending out to department heads in the past, such as the emails asking them to review hotel rooms for their department.

The main thing this gives us is that when we don't hear from a department head, we can tell the difference between "they looked at this and didn't need to do anything" and "they didn't even look at this".  By making them click a button on the page, we can see who has and hasn't reviewed everything.

I'll leave comments explaining what I did in various files, code-wise.
Unfortunately it wouldn't help in that case, since this only helps when you've already assigned the exact foreign key you need to be able to look up the object in the other table.  In the case of most of the age group code, the reason why all of those ``@property`` functions had to be defined (if memory serves) was that you had a field which allowed you to look up the row (the birthdate) but was not itself a foreign key.