Merge pull request #62 from coddingtonbear/fix_choices_handling_udas

Properly handle parsing choices from UDAs.
Merge pull request #63 from coddingtonbear/none_and_none_are_none

Do not record changes when both the former and latter values are Falsy
Merge pull request #61 from coddingtonbear/better_annotation_objects

Make annotations really be strings, just special ones.
Merge branch 'develop' into inthe_am