Responsible for providing compression strategy instances (via factory
methods), implementing template methods used by specific strategies, and the
creation of compressed backup files.
Responsible for periodically sampling the number of log files with a given
base filename and time-based extension, and for deleting the older files if
the scavenger's conditions are met.
An object that executes submitted logging tasks that provides methods to
manage termination and methods that can produce a Cancellable for
cancellation of one asynchronous task.