Optimize transfer of video frames to textures.

This does two things:
1) Use pixel buffer objects, if available, and
2) Use bgra instead of rgb24 pixel format for non-yuv420p videos.

The first change allows the OpenGL driver to avoid a data copy, see the
ARB_pixel_buffer_object spec. This leads to a factor 2 speedup with the
proprietary Nvidia drivers in my test with a 2x1080p stereo video.
With the free ATI r600 driver, it currently leads to a factor 2 slowdown
instead, but this is something that will probably be fixed some day.
Move the initialization of the Qt application into its own file.

This is in preparation of the GUI, which will also use this.
Add basic GUI infrastructure, based on Qt. Not yet functional.
First working GUI version, based on Qt.

This required some structural changes all over the place.
Remove dependency on freealut.

The OpenAL initialization/deinitialization is simple enough to be done
manually. This avoids a dependency on freealut.
Remove forgotten debugging output.
Do not refuse to play if multiple audio streams are available.

Simply only use the first audio stream and ignore all others. This helps in the
situation where separate left/right video streams each have their own audio
stream.
GUI: properly handle errors that occur when trying to start playing.
Bump version to 0.3.
Simplify registration of controllers.

And remove nonsense comment about it.
GUI: Fix 'swap eyes' functionality.
Equalizer: fix stupid crash bug.

The reason for the crash was that the eq_node_factory was not valid anymore
at the time eq_config::init() was called...
Work around problems with some GL implementations.

This uses the ARB suffix on PBO-extension related functions. This should not
be necessary, but it is required on my netbook running Ubuntu 10.10 because the
same functions without ARB suffix are not initialized for some reason.
GUI: Fix File->Open behaviour.

If the player is running, stop it. Also automatically set input and output mode
according to the new video.
GUI: Fix File->Open behaviour on invalid input files.

Disable play button.
GUI: Fix play button behaviour on errors.

Go into stop mode if something goes wrong.
Equalizer: fix crashes in texture upload.
Fix bug in audio decoding that can cause crashes and inaccuracies.
Reinitialize OpenGL context when switching between window and fullscreen.

This *might* fix some problems on Mac OS X and under KDE.
If it does not, I'll revert this later.
Move GL context reinitialization after the QWidget::show() call.