compositor: Don't set window container coordinates
compositor: Set transient window position

Closes #103
compositor: Fix build by excluding code not yet supported

QWaylandSurface::windowType() is not upstreamed yet, plus I submitted a
patch that sets the surface item position according to the surface
position and this will take care of correcly place transient windows.

See:
  https://codereview.qt-project.org/#change,73186
  https://codereview.qt-project.org/#change,73393
compositor: Expose application windows to the shell client

Implement wl_hawaii_shell_window interface.
While we're here, we turn the Compositor into a singleton.

Closes #104