On a device lost, all the surfaces allocated in the
device need to be released before resetting the device,
which can't be done for the allocated buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=706566
Use the bilinear scalling filter when the magnifier or the minifier
filters are avaible. Some graphics cards do not provide minifier filters
but we want to use it for upscalling if it's available
https://bugzilla.gnome.org/show_bug.cgi?id=697176
And only support color formats that are actually supported by the driver,
this allows proper zero-copy handling later and simplifies the code a lot.
Also simplify some other places, like the format mapping code.