code: function (options, iterationInfo) {
          var files;
          var modules = {};
          var result = {};
  
          // remember the starting directory
          try {
              files = fs.readdirSync(iterationInfo.dirName);
          } catch (e) {
              if (options.optional)
                  return {};
              else
                  throw new Error('Directory not found: ' + iterationInfo.dirName);
          }
  
          // iterate through files in the current directory
          files.forEach(function (fileName) {
              iterationInfo.dirName = iterationInfo.initialDirName + '/' + fileName + '/' + options.moduleDir;
              iterationInfo.projectDir = iterationInfo.initialDirName + '/' + fileName;
              result = _.assign(doInterations(options, iterationInfo), result);
          });
  
          return result;
      }
docs: Parses a directory and searches for options.module subdir. If found subdir is searched for required files
  @param options
  @param iterationInfo
  @returns {{}}