async function loadRawModule(pathFolders, ...fileNameParts) {
  const paths = lookupFile(pathFolders, ...fileNameParts);
  const sources = await Promise.all(paths.map(name => fs.readFile(name, 'utf8')));
  if (paths.length > 1)
    console.error('Module ' + fileNameParts[0] + ' overriden');
  const descriptors = sources.map(data => JSON.parse(data)).reverse();
  const descriptor = {
    dependencies: [],
    scripts: [],
    resources: [],
    extensions: [],
    experiment: '',
    ...descriptors[0]
  };
  return { descriptor, paths: [path[0]] };
}
@params {!Array<string>} pathFolders
@param {!Array<string>} fileNameParts
@return {!Promise<!{descriptor: !RawModuleDescriptor, paths: !Array<string>}>}