added gl unit testing and related cmake changed based on glfw
added shader compilation unit tests
more work on shader port