So the naming here feels backwards. You add and remove children, and the parent needs watch/unwatch. Now the method names read the opposite to me.