model: fix the import location for Block

A number of deritive modules of Block were importing the Block type from
its old location in site.py. Update the import so they are all importing
Block from the correct location.
model: improve SwitchableTypeField

When an EmbeddedDocumentField referenced itself, it wouldn't be able
to resolve the actual EmbeddedDocument because ._owner_document was
never set on it. Manually do this in the STF before validation.
Merge branch 'fix-model-and-editor' of https://github.com/damoxc/cms_prototype into damoxc-fix-model-and-editor
Merge branch 'damoxc-fix-model-and-editor' into editor

Conflicts:
	cms_prototype/models/blocks/form.py
	cms_prototype/models/blocks/link.py
	cms_prototype/models/blocks/text.py
fixed bug for template with no content