Using Await.ready rather than Thread.sleep to wait for futures to finish