wayland/egl: rework resizing (again)

Moves a good chunk of the resizing code to wayland_common.c. This makes it
possible to share it with future video drivers.

It doesn't resizit it immediatly, it calcutlates the new position and size and
then shedules a resizing event. This removes the ugly callback and void pointer
from the wayland data structure.
wayland: remove shm listener for the backend

The obtained information from the shm listener isn't used by anything and is
also wrong now in wayland git master branch because of new shm formats which
need a different way of saving the supported formats.
wayland: shm based software rendering

A wayland output based on shared memory. This video output is usefull for x11
free system, because the current libGL in mesa provides GLX symbols. It is also
usefull for embedded systems where the wayland backend for EGL is not
implemented like the raspberry pi.

At the moment only rgb formats are supported, because there is still no
compositor which supports planar formats like yuv420p. The most used compositor
at the moment, weston, supports only BRG0, BRGA and BRG16 (565).

The BRG16 format is the fastest to convert and render without any noticeable
differences to the BRG32 formats. For this reason the current (very basic)
auto-detection code will prefer the BRG16 format. Also the weston source code
indicates that the preferred format is BRG15 (RGB565).

There are 2 options:
    * default-format (yes|no)  Which uses the BRG32 format
    * alpha (yes|no)    For outputting images and videos with transparencies