🐞 Describe the Bug
Currently, it looks like we'd use this
without this, users need to to manually call destroy (available on renderComponent's return value)
e.g.:
let { destroy } = renderComponent('...', { into: x });
// time passes
destroy();
vs
renderComponent('...', { into: x });
x.remove();
// component is destroyed for you (async)
// (desired, but not happening today)
This could also happen if you remove all of the children
should trigger cleanup