fix GC bug

GC during allocation of a pair, weak box, ephemeron, or
weak array went wrong if the GC-notification callback
allocated any of those kinds of things.

(Bug found by running tests in GC-stress mode.)
add missing GC traversal-function registration

Related to places and place messages.

(Bug found by running tests in GC-stress mode.)
GC: make place-message support work with GC stress mode