compositor: Fix shell windows events

Handle events for shell windows.
client: Fix typos in dialog window implementation

No functional change.
client: PopupWindow inherits from QObject

PopupWindow is just an object now, it creates and destroy the window
when necessary.

When the popup is told to hide, the window is destroyed and the grab
with it.
client: Follow popup window changes on AppChooser

We don't need to load AppChooser in that insane way anymore since
PopupWindow will handle windows for us.
client: Set Popup default property to data

This will allow us to add visual items and resources just like we
normally do with Items.
client: Properly account for margins in Popup

This also prevents unnecessary nesting.
styles: Leave some margins around popups and dialogs

This way we can actually see the drop shadow.
client: Follow popup window changes for PanelMenu

Hide the window when asked to close instead of calling dismiss().
compositor: Use FpsCounter from GreenIsland

Simple FPS counter on the top right edge.
Later we will make it visible according to the settings.