Renamed Dispatch to Detach.
Made Draw and Update return a Ref.
Doubled window size, since sizes smaller than the default window size seem buggy.
Moved glut.PostRedisplay() to the right place.
A nil value is not allowed as a parameter to glut.DisplayFunc(), so replaced it with an anonymous function.