Generate Unique Indices for Lists of EmbeddedDocs

- Unique indices are now created in the database for EmbeddedDocument
  fields when the EmbeddedDocument is in a ListField
- Closes Issue #358
Update Tests for EmbeddedDocument Unique Indicies
Update to Changelog to include Fix for #358
Minor typos fixes in docs
Merge pull request #810 from 3lnc/Doc_fixes

Minor typos fixes in docs
Merge pull request #806 from mmelliso/mmelliso/indexing

Generate Unique Indices for Lists of EmbeddedDocs
replaced `text_score` attribute to `get_text_score` method

Signed-off-by: Wilson Júnior <wilsonpjunior@gmail.com>
Check if undefined fields are supplied on document

If an undefined field is supplied to a document instance, a
`FieldDoesNotExist` Exception will be raised.
check for dynamic document, exclude id pk and _cls
fixed tests that were using undefined model fields
remove unittest test_no_overwritting_no_data_loss

Now that fields need to be defined explicitly, it's not possible to have
another property with the same name on a model.
https://github.com/MongoEngine/mongoengine/pull/457#issuecomment-47513105
add FieldDoesNotExist exception to __all__

So it will be available when you do:
    from mongoengine import *
add test if FieldDoesNotExist is raised

When trying to set an undefined field.
using python 2.6 compatible way of assertRaises
added ints in string.format() for 2.6 compability
moved initialization of _created before FieldDoesNotExist check

Because otherwise we'll get a FieldDoesNotExist error on the field
_created.
fixed more tests that were using undefined model fields
Refactoring: `Simple is better than complex`

Signed-off-by: Wilson Júnior <wilsonpjunior@gmail.com>