Move content type definition to a model

This is based on [Model-driven types](http://docs.plone.org/external/plone.app.dexterity/docs/model-driven-types.html).

Tests are failing and I don't know how to fix it; some information can be found on [a thread of the Product Developers list](http://plone.293351.n2.nabble.com/SupermodelParseError-Field-type-plone-app-textfield-RichText-specified-for-field-body-is-not-supportd-td7569207.html).