Make update_children work even if oldchildren is undefined

https://github.com/ipython/ipython/pull/6463 changed the update algorithm so that a model is updated all at once, which means now the update_children is called with the "previous" children, which is undefined.  I think previously, we were implicitly relying on the order of attribute updates.

This change just makes it so that the update_children function can be called with `oldchildren===undefined`, which happens in the initial syncing of the object.