If we dont recound atomically here we have a problem, as you suggest. Maybe we should move all the onion_random_init to onion_new, so its initialized at onion initialization.