Use ARB_debug_output ext functions instead of core

Shouldn't be checking if the core functions exist. Should instead check
for the ARB_debug_output extension and then use the extension functions.
Merge branch 'master' of github.com:Razish/xsngine
Reimplemented quad rendering with modern GL funcs.

The way this has been done is a bit hacky and will be a lot cleaner once
there are data files describing shaders, materials and vertex formats.