Destroy the node safer and add more helper code

The child remove event must be triggered before the node class deinit
is being called. This give time to the external elements to do their
deinit safer.