A simple way to manage multiple asynchronous tasks