Enable exact birthdates

Adds support for collecting the exact birthdate from attendees. Fixes #586.

The database on live/staging servers will need the "birthdate" column added to the Attendees table and the AgeGroups table added before this code can be used on them.
After thinking more about it, I decided that:
1. We don't really need this change in M13.
2. If we implement it now, we'd have to muck around with the database.
3. Making it compatible with M13's database makes the code stupid and brittle, because you had to set age_groups in configspec.ini to be the exact same values as age_group.desc.

So now this straight-up is not compatible with M13 (it replaces a Choice column with a relationship column). We can close this PR for now and re-open it after M13, or just keep it open the whole time - up to you guys.