wayland: Allow destroying the wl_surface before the xdg_surface

As resource destruction can happen in any order at shutdown, we
need to be flexible here. A client disconnecting without cleaning
up all its resources should not assert fail.
Revert "wayland: Explicitly destroy the surface actor"

This reverts commit 283a81eac0a2012ed7b1b9e758a5c5ab166d3863.

This can't be done yet, as it will crash when we try to do a destroy
effect from a plugin. The surface actor needs to outlive the surface
in this case.

Though, the unparenting happening is wrong anyway for a destroy effect.
We need to figure out a sane way of doing this unparenting only after
all effects have finished.