Programmatic access to the archive rotator

    :param algorithm: an instance of BaseRotator from algorithms.py
    :param path: full path to input file
    :param ext: (optional) file extension to preserve
    :param destination_dir: (optional) different location for output file
    :param verbose: (optional) print more to stdout
    :return: nothing

def rotate(algorithm, path, ext="", destination_dir=None, verbose=False):
    """
    Programmatic access to the archive rotator

    :param algorithm: an instance of BaseRotator from algorithms.py
    :param path: full path to input file
    :param ext: (optional) file extension to preserve
    :param destination_dir: (optional) different location for output file
    :param verbose: (optional) print more to stdout
    :return: nothing
    """
    paths = Paths(path, ext, destination_dir)
    _move_files(algorithm, paths, verbose)