This creates a listmodel that tracks a widget's children. Doing so turns adding/removing children from O(1) to O(N) though, so use with caution.