Fix a bug where updates would get counted twice

If a field is a "pending field" then it should be logically removed from
the fields that are being marked as "updated"
Encode only primitive types when converting audit to dict
Add in recent edits API endpoint and tests