Add support for glutSetCursor function

That pull request implements the glutSetCursor function.
The following GLUT cursor types are supported : 
* GLUT_CURSOR_INFO
* GLUT_CURSOR_HELP 
* GLUT_CURSOR_WAIT
* GLUT_CURSOR_TEXT
* GLUT_CURSOR_CROSSHAIR
* GLUT_CURSOR_UP_DOWN
* GLUT_CURSOR_LEFT_RIGHT
* GLUT_CURSOR_TOP_SIDE
* GLUT_CURSOR_BOTTOM_SIDE
* GLUT_CURSOR_LEFT_SIDE
* GLUT_CURSOR_RIGHT_SIDE
* GLUT_CURSOR_TOP_LEFT_CORNER
* GLUT_CURSOR_TOP_RIGHT_CORNER
* GLUT_CURSOR_BOTTOM_RIGHT_CORNER
* GLUT_CURSOR_BOTTOM_LEFT_CORNER
* GLUT_CURSOR_NONE 
Wow, that sounds harsh. Yeah, to match that, `throw`ing an exception sounds fine.