constructor(ui, system, pkg, dir) {
        this.ui = ui;
        this.system = system;
        this.pkg = pkg;
        this.dir = dir;
    }
Creates the extension instance

@param {UI} ui UI instance
@param {System} system System instance
@param {Object} pkg Package.json contents
@param {string} dir Extension directory