Exceptions have been moved in mongoengine 0.8.
Merge pull request #16 from gnublade/master

Changes for MongoEngine 0.7.x
Merge pull request #19 from feliperyan/master

KeyError from getitem during save().
Merge pull request #22 from Demoncode/master

Changes for MongoEngine 0.8.x
Two fixes and cleanup.

Removed duplicate __contains__() in DocumentMetaWrapper. Fixes for
issues #13 and #15
Python 3 support via 2to3
Fixes #24

Fixes issue #24. Additionally EmbeddedDocumentForm now honors the fiels
default value upon save.
Metaclass declaration fix to work in 2 and 3. Added six.py for that
Logic is hard and a 'not' was missing.

patch_document is still required but should hopefully work in python 2
and 3 now
Moved with_metaclasses to util and removed the unneeded six stuff
Setting can_delete to False shouldn't raise a KeyError
Emedded formsets should take arguments in the same order listed in the Django ModelForm docs. Right now, trying to bind POST data to an embedded document form set throws an error, because the first keyword argument to EmbeddedDocumentFormSet is parent_document rather than data. This commit moves parent_document to the end of the keyword arguments list so that it's more likely to behave consistently with the Django docs.
s/cook/cool/
Using patch document again in documentoptions.py
Accept model and document keywords on form meta. Closes #25
Handle embeddef ield types correctly
Correctly import smart_unicode. A bit of cleanup
Argh, forgot one import on last commit
Added a proper save method to EmbeddedDocumentFormSet. Hopefully closes #23
And a fix for the last fix. Dough