Add support for versioned documents
Add support for ?version=diffs
Clean up existing versioning functionality
Return a 400 response on pymongo DuplicateKeyError
Add version number to response in write requests
Fix failing unit tests
Merge branch 'develop' into versioning
Add test unit plan for versioning
Implement TestLateVersioning unit tests
Enable version control before test data is entered
Add version controlled contacts after setUp instead
Add TestPartialVersioning write method tests and fix patch
Complete TestPartialVersioning tests
Add primary tests for TestCompleteVersioning
Add a nice error for a bad projection with a version query
Implement ?version= test cases
Add stubs for projection test cases
Close more open connections in tests

- Found some Eve app not assigned to self.app. They weren't cleaned up.
- In media tests, the media element needs to be removed due to the
  GridFS keeping a connection there.
Add post database events and review event names
Ohh, I'm a bad boy. flake8 fixes