Port to Weston git master.

The biggest difference is the introduction of the new
weston_view struct.
Make it build with weston master
Use a custom default pointer grab interface
Fix the zoom effect
Merge branch 'master' into weston_git
Move the pointer in the effects grabs
Port to weston da75ee1
Port to weston da704d9
Port to weston cae1f0f
Add a hotspot binding type to trigger the effects
Make the workspace have their own view of the background
Put some margins between the workspaces in the grid desktop effect
Make bindings togglable

Some bindings need to be togglabe and exclusive, so that when i enter
the scaleeffect pressing the griddesktop's binding should do nothing.
Init field before it's used
Manually release the binding toggle
Switch to the right workspace when clicking in the griddesktop effect
Allow moving of surfaces between workspaces while in griddesktop
Add missing include
Move part of wl_shell specific code into its own file

The goal is to move all of it, and in the future to have a similar
one for xdg_shell. Same thing with wl_shell_surface and xdg_shell_surface.
Move wl_shell_surface and xwayland functions to their own file

There still are bits to move out of shell.cpp and shellsurface.cpp
but the main work is done.