constructor(configuration) {
        let options = configuration || {};
        let applicationExecutableDirectory = path.dirname(electron.app.getPath('exe'));
        this._applicationUpdateURL = options['applicationUpdateURL'] || 'https://manga-download.github.io/hakuneko/master/latest';
        this._applicationStartupURL = options['applicationStartupURL'] || 'hakuneko://cache/index.html';
        this._applicationCacheDirectory = options['applicationCacheDirectory'] || path.join(applicationExecutableDirectory, 'cache');
        this._applicationUserDataDirectory = options['applicationUserDataDirectory'] || path.join(applicationExecutableDirectory, 'userdata');
    }
Configuration for portable usage of the application
See also: https://github.com/electron/electron/blob/master/docs/api/app.md#appgetpathname
@param {Configuration} configuration Another configuration (object/structure) from which the properties shall be applied