This commit also changes the behavior of ProgressContext.IsFinished.
Only tasks that have been started will be taken into consideration,
and not indeterminate tasks.
Closes#329Closes#331
Makes the Report method an explicit implementation to allow for better interoperability with standard .NET progress functionality while keeping backwards compatibility with existing ProgressTask functionality.
Closes#285
Previous behavior was that the only way to get a task to a finished state was to artificially set the Value to MaxValue.
With this change StopTask() will also complete the task with the change that a task cannot be restarted.