Add helper for moving views on and off layers
A view's position within the scene graph (and thus paint nodes) is determined from where it lies within the layer list, as well as any transforms applied to it, including parent relationships.
Right now, moving a view around within the layer-list is open-coded everywhere, and people get it wrong in different and exotic ways. This MR provides a helper which implements the right semantics within the core, and uses it within desktop-shell (the main path anyway), kiosk-shell, and weston-test-desktop-shell. There are other places to clean up, but this is a start.
Edited by Daniel Stone