Included tests for required fields (checks primary key is required as well). Switched from using SuperClass.__init__ to super(). Added constructor for EmbeddedDocumentField.
Included tests for required fields (checks primary key is required as well). Switched from using SuperClass.__init__ to super(). Added constructor for EmbeddedDocumentField.