Fixed menu and construtor bug with contentObjects

- This meant a re-write of AdaptModel methods to not use the
constructor (this.constructor.children) and instead use
``this._children`` as children change when a contentObject is a
``_type`` of page.
- Menu now works across multiple levels
- All models are now updated to not use the constructor