Clean up tests for external documents.
Always ensure document timestamps are set.
Sanitize and normalize documents when assigning, and don't update timestamp when nothing is being changed.
When assigning the document, ignore any key/value pairs that exist at the top level of the external document; ie. "unmerging" the document when assigning it, the reverse of Post#merged_document.