Shell popup windows

Add the necessary protocol to handle shell popup windows and do the
compositor-side implementation.

Issue: #29
Popup window

Add a new window type for popups.

Issue: #29