GemWindow::call4all() that calls a function for each context

iterates through all windows, makes them current and calls a
callback function within that context.

cool for cleanup and the like
free lights in all contexts when light is destroyed
bind all GemBase objects to '__gem_private__object'

so we can send messages to all of them.
send a message '__gem_private_die' before it is to die

so we can still do things before being destroyed
(like triggering cleanup code in parent classes)
negative states are not propagated to the outlet

so we can stop rendering for each object.
cleanup before destroying GemWindow

send a stopRendering message to each GemBase object when the context is destroyed