Allow comma-separated UUID field to properly handle null values.
Assume that fields with registered converters are present on task record.
Use six.text_type rather than str.
Preserve all annotation information should we have it, but still handle outgoing and incoming values as if they were strings.
Adding tests verifying this behavior.
Merge pull request #54 from coddingtonbear/cautious_configuration_handling

Raise an exception if we can't parse configuration; ignore simple config...
Merge pull request #58 from coddingtonbear/csuuid_field_enhancements

Allow comma-separated UUID field to properly handle null values.
Merge pull request #59 from coddingtonbear/assume_specified_fields_have_value

Assume that fields with registered converters are present on task record.
Pulling in upstream changes.
Merge remote-tracking branch 'origin/only_change_if_changes_exist_when_using_modern_task' into inthe_am
Merge remote-tracking branch 'origin/annotation_field' into inthe_am
Merge remote-tracking branch 'origin/properly_deserialize_numbers' into inthe_am
Merging in upstream changes.
Merge pull request #57 from coddingtonbear/only_change_if_changes_exist_when_using_modern_task

Only attempt to change fields known to have changed if using new journal...
Merge pull request #56 from coddingtonbear/properly_deserialize_numbers

Attempt to convert incoming string into int or float.
Merge pull request #55 from coddingtonbear/annotation_field

Add AnnotationArrayField for handling idiosyncrasies of annotations.
Convert annotation to text if it isn't already; python's re module expects real str objects.
Make annotations really be strings, just special ones.
Merge branch 'better_annotation_objects' into inthe_am
That's surprising, but I suppose __new__ takes care of these detais.