More work on value_waiter