Progress class a generic coroutine actor
Progress class a generic coroutine actor

To accomplish progress we need to set an amount of steps and then tic these steps off in process. Calculating the progress as the quotient of the steps completed divided by the number of total steps.
The progress class can additionally store the payload which it can the forward to a target once completion has been reached.
This forwarding is accomplished through coroutines and Progress ticker implements the send method to act like a coroutine and it will send the progress to a receiving coroutine which is tasked  with the visual display of progress.

Aeronautics/aero