generalize update section of enroll_data() to check each field in turn.
various tweaks surrounding database.  seeing if i can reduce duplication of words
fix tests to work for datetime and change comparison in float_or_none() to is rather than ==