listr(tasks, context, options) {
        const listrOpts = Object.assign({
            renderer: this.verbose ? 'verbose' : this.Renderer,
            exitOnError: true
        }, options || {});

        const listr = new Listr(tasks, listrOpts);
        return context === false ? listr : listr.run(Object.assign(context || {}, {ui: this, listr: listr}));
    }
Runs a set of Listr tasks. Uses Listr under the hood

@param {Array} tasks Listr Task objects
@param {Object|boolean} context Context to run the tasks with
@param {Object} options Additional Listr options
@return Listr|Promise<void> Listr object if context === false, otherwise
                            a promise that resolves once the tasks have
                            completed

@method listr
@public