wait for children before exit; avoid a 'socket already used' issue on restart;