components: Don't show tooltip if its parent doesn't have a window

Make sure we don't access a null pointer.
components: Improve tooltip position

Subtract tooltip's height not window's height.
components: Fix access to the __style property in Tooltip

Fix errors accessing __style.
appchooser: Add a tooltip

Add a tooltip to make more clear what the button does.
containments-panel: Compress events

Compress events and change the layout properties all at once.
client: Load desktop containment

Issue: #129
containments-desktop: Initial desktop containment

Initial version of the desktop containment.
It only has a simple Flow layout but doesn't have code to position
elements yet.

Issue: #129
desktop: Setup desktop view containment

Anchor the containment to the root item as soon as it's added.

Issue: #129
client: Set initial desktop view geometry according to available space

Even if at the moment qtwayland doesn't provide the available geometry,
we want this code to be ready.