add lots of open gl error checking