Implemented much more of the new tree api structure. Have converted most of the content tree over to use it.
Merge remote-tracking branch 'origin/7.0.0' into 7.0.0