VAAPI: rewrite + advanced deinterlacing

This adds advanced deinterlacing capabilities to VAAPI

- VAAPI motion adaptive
- VAAPI motion compensated
- ffmpeg yadif

In order to make this possible I have rewritten VAAPI using the same design patterns as in ActiveAE and VDPAU.

Testing deinterlacing for VAAPI has a long history: http://forum.xbmc.org/showthread.php?tid=165707
Thanks to @fritsch and @wsnipex who have been working with me on this. Also thanks to @sraue who included this in OpenElec for quite a while.

Special thanks to @gbeauchesne who fixed libva-intel-driver and finally made this work for MADI, MCDI