Seems like TERMINATE_BLOCK could become a method, and @terminate_callback could disappear, now that we unconditionally call that block on shutdown.

(Random aside: how does this terminate block work with Rainbows graceful shutdown, where we didn't start the EM reactor? I'm sure that case is covered, just curious.)