VideoOutput: Simplified signals and code.

Signal changes:
  - removed the fullscreen_changed signal: This is not responsability of
    the videooutput component to toggle fullscreen mode. The call window
    of the main application should handle fullscreen mode and display
    the video feeds according to the currently displayed video stream
    resolution.
  - simplified the device_opened signal: The main application handling
    the display only needs to know the number of video streams that are
    active and if there is an extended video stream available or not.
    Other types of information like the fullscreen mode or the current
    video display mode should be handled by the main application itself.
    The video output component should only output whatever signal it
    receives onto the appropriate video surface (in fullscreen mode or
    not).

Other simplifications:
  - set_display_info and set_ext_display_info now directly use a
    gpointer which represents the video surface onto which the videooutput
    component is supposed to output the video stream. The main
    application is supposed to handle fullscreen and
    sizes. The videooutput component only outputs the video stream onto
    that surface.
  - video views have been removed from the component. There is no reason
    to switch from local video to remote video or to both streams. If
    both streams are active, we should display them in PIP mode. If not,
    we should display whatever stream is available. Again, the
    videooutput component does not handle this. The main application
    does. The videooutput component just outputs the stream onto the
    corresponding video surface.

The videoooutput-core has not been 100% ported yet.
VideinputInfo: Added #define for MAX_VIDEO_SIZE.
ExtWindow: Disable set_ext_display_info call.

That code has not been ported yet. This is still a TODO.
Pixmaps: Added a 256x256 "full" icon.
Opal VideoOutput: Fixed indentation.
Clutter GST: Added a new clutter gst videooutput.

This is using the GStreamer and Clutter APIs to display frames.

The new videooutput designs requires the videooutput to display frames
onto a surface whatever its size, position and states are. That's
implemented by the current code which will output frames on a
ClutterActor. The part of the GUI managing the ClutterActor is
responsible to size it appropriately following the natural size of the
video.
CallWindow: Replaced the old X/DX video surface by Clutter code.

There are 2 ClutterTextures, one for local video and one for remote
video. They are connected to the VideoOutput so that frames can be
displayed.

This code is unfinished, but it works:
  - Fullscreen is supported.
  - The zoom notion has disappeared: the window is now resizeable to any
    size. The video is then displayed with the correct aspect ratio.
  - The video view notion has disappeared too. We automatically display
    what is appropriate.
Engine: Init the clutter gst component.
GmWindow: Allow applications to save and restore the state of GmWindow.
GmWindow: Fixed position not being restored when the window is shown.

We fixed the code to restore the window state when it is realized. That
prevented a flickering effect to appear when starting Ekiga. However,
when the window is hidden, then shown again, the state was not restored
back. This is now fixed by also connecting to the show signal.
CallWindow: Restore state when going unfullscreen and added F11 accel.
Video: Dropped old XV, X11 and DX complex code.

This is now replaced by simpler GStreamer/Clutter code.
Video: Simplified code again.

The videooutput-info.h file was removed as we do not need it anymore.
Output statistics have been removed.
Error codes have been removed from the output manager too. There was
only one type of error possible.
All references to DisplayInfo have been removed (or commented out for
further processing).
VideoOutput: Code reorganization.

This commit contains several required changes related to the VideoOutput
mechanism:
  - An Enum was introduced to describe the video stream type.
  - The size_changed signal is now triggered only when the video stream
    size changes after the device has been opened and only if it had
    been opened with different size settings.
  - The device_opened signal now mentions the video stream that was
    opened as well as its sizes.
  - The decision related to which video stream should be displayed in
    big is now left to the UI. Having the VideoOutputManager deciding
    was a bad design idea. The UI is now responsible to resize, move,
    and adapt the local and remote video stream windows.

There are also various other minor cleanups.
VideoOutput: Removed zoom and video-view related code.

Everything is now automatically handled following the window size and
the available video streams.
VideoOutput: Removed useless keys and related code.
VideoOutput: Removed stay-on-top code. It is now handled by the UI.
VideoOutput: Removed useless widget.
VideoOutput: Removed useless draw GObject method.
VideoOutput: Removed useless priv widget.