Large documents no longer causes exceptions in MongoDocumentIO's cleanup

Also adds a new test file for MongoDocumentIO which does not require a live MongoDB instance.

---

We found an issue where the in memory cache lets Hydra process a document which is too large for MongoDB, but then when it wants to write the entire document to oldDocuments it fails and MongoDocumentIO does not clean up correctly.

This is fixed by removed the largest fields from the document until it fits in MongoDB.