Unbind interfaces when exiting

DesktopShell destructor unbinds interfaces.
Grab surface and cursor

Change cursor when a window is grabbed.

Issue: #37