Support DRM backend without GBM - preparation work
This is some preparation works to address #258 (closed). I do have a working prototype with a bunch of ifdef's sprinkled throughout the code, I plan to clean it up some more. In the end I guess some ifdef's to archive this goal are acceptable?