IProgressMonitor interface is implemented
by objects that monitor the progress of an activity; the methods
in this interface are invoked by code that performs the activity.
A default progress monitor implementation suitable for subclassing.
A progress monitor that uses a given amount of work ticks from a parent monitor.