Awaits the completion of all the futures in the list without blocking the event loop, and fails as soon as any future fails.