fixed bug for queryset.distinct to work also on embedded documents, not just on lists of embedded documents
implemented ability to return instances and not simple dicts for distinct on subdocuments
Fixes #811. Fixes reflinks
added test for capacity to get distinct on subdocument of a list
Added a test that verifies distinct operations on nested embedded documents.
Merge pull request #1 from thedrow/patch-1

Added a test that verifies distinct operations on nested embedded docume...
fixed order of list for the test to pass
Fix crash when applying deletion rules

When deleting a document references by other, if that refence is
defined on an abstract document, the operation fails, because it tries
to apply deletion on the abstract class which doesn't have a QuerySet.

Fix is simply to ignore document classes which are defined abstract when
applying rules on all classes referencing the document.
Merge pull request #825 from idlead/fix/reverse_delete_rules_on_abstract_documents

Fix crash when applying deletion rules
Merge pull request #821 from 3lnc/Document.switch_docstring_fix

Fixes #811. Fixes reflinks
Merge pull request #815 from MRigal/master

fixed bug for queryset.distinct to work also on embedded documents, not ...
Ensure Indexes before Each Save

- Rely on caching within the PyMongo driver to provide lightweight calls
  while indices are cached.
- Closes MongoEngine/mongoengine#812.