update submodules
add gl_strerror() function
implement port drawing
rearrange demo, make it print gl errors