code: function traverseLeaf(next, requireString, requireIndex) {
          var reqPath
            , reqDeps
            ;
  
          if ('.' === requireString[0]) {
            reqPath = url.resolve('/' + leaf.modulepath, requireString).substr(1); // strip leading '/'
          } else {
            // TODO handle absolute paths
            reqPath = requireString;
          }
  
          // check that we haven't visited this dependency tree already
          reqDeps = allDepsList[reqPath];
          if (reqDeps) {
            reqDeps.requiredAs[requireString] = true;
            leaf.dependencyList[requireIndex] = reqDeps;
            next();
            return;
          }
  
          getModuleTreeHelper(null, allDepsList, pkg, leaf, requireString, function (err, deps) {
            if (err) {
              callback(err);
              return;
            }
  
            leaf.dependencyList[requireIndex] = deps;
            next();
          });
        }
docs: turns require strings into dependency objects