Add basic output surface support with g2d
Add overlay layer for OSD

This partly breaks X11 integration due to hardware limitations. The video
area can't be overlapped by other windows now, until we get some fallback
path for this. For fullscreen use, however, this is no problem.
Use defaults for null rects
Initial bitmap surface support
Handle null source/dest rects properly
Handle invalid source surface properly
Fix null pointer dereference in vdp_presentation_queue_display()
Fix clipping of output_surfaces

If clip_{width,height} are null the whole output_surface has to be shown.
Merge branch 'master' into osd

Conflicts:
	presentation_queue.c
	vdpau_private.h
	video_mixer.c
Add cache flush to surface put_bits functions
Prevent possible OSD flickering
Make OSD support runtime switchable through VDPAU_OSD environment variable

By default OSD is turned off, because the OSD layer still breaks
X11 integration. To enable OSD support, set environment VDPAU_OSD=1
Merge branch 'osd'