Only attempt to change fields known to have changed if using new journaled task.
Properly handle changes to annotations.
Use six.text_type rather than str.
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...