Use GLFW instead of GLUT

Also add a new timer class for ease of use