Another place where we were leaking children.
Rename the DataList object to TreeData, in preparation for adding a ListData object for list models. While we are touching it, modernize it a bit (drop the Private struct, use a layout manager, etc).