Added basic shader code and shader creation/deletion to OpenGL backend
Added vao creation/initialisation to OpenGL backend

  - begin function works propperly
  - end function segafaults for unknown reason (strange stack trace,
    very big calling addresses, no function names, no libraries,
    sgui_end somehow called by dri function??) probably messed up
    function pointer
Allowed external access to window handle and context handle