When ~Scene is called, it's not guaranteed that backend is still valid
or that there is current opengl context. So, generally speaking,
deleting scene windows in ~Scene is a bad idea.
It's okay not to delete scene windows in ~Scene because current
implementation of Compositor::finish ensures that they don't last longer
than the scene.