util/when

This implements `util/when` such that when() returns a promise that awaits every argument.