compositor: Screenhoot into a client provided shm buffer

This moves the png writing part to the client and removes the gdk-pixbuf
dependency from the compositor.
diff --git a/protocol/screenshooter.xml b/protocol/screenshooter.xml
index f8d993d..1487c6d 100644
--- a/protocol/screenshooter.xml
+++ b/protocol/screenshooter.xml
@@ -1,7 +1,10 @@
 <protocol name="screenshooter">
 
   <interface name="screenshooter" version="1">
-    <request name="shoot"/>
+    <request name="shoot">
+      <arg name="output" type="object" interface="wl_output"/>
+      <arg name="buffer" type="object" interface="wl_buffer"/>
+    </request>
   </interface>
 
 </protocol>