Refactor/Redesign: DynamicObject as parent of DynamicDocument