A JavaScript class and design pattern to make async tasks clear and simple.