add high-level interfaces to glut callback registration funcs
* figl/glut/types.scm (define-ephemeral-callback-pointer-type)
(define-sticky-callback-pointer-type): Provide a way to protect
procedures passed into GLUT from being GC'd. Change the definitions
of the pointer types to use these new helpers.
* figl/glut/low-level.scm: Use the pointer types defined in (figl glut
types).
* figl/glut.scm: Add exports for the callback registration functions.
* examples/glut/demo.scm: Use set-display-callback. Now the demo uses
no low-level GLUT interfaces.