     # set the readable stream's encoding so we read strings from it
     bundle.setEncoding('utf8')
 
-    # extract the source map content from the generated file to give to Meteor
-    # explicitly by piping bundle thru `exorcist`
+    # # extract the source map content from the generated file to give to Meteor
+    # # explicitly by piping bundle thru `exorcist`
+    # get path to file in OS style, resolve against CWD with app/package root, and file path
     mapFilePath = Plugin.convertToOSPath path.resolve file.getRoot(), file.getPathInPackage() + '.map'
+
+    # pipe thru exorcist transform with display path as the 'source map url'
     exorcisedBundle = bundle.pipe exorcist mapFilePath, file.getDisplayPath()
+
+    # store reference to original bundle to access it elsewhere
     exorcisedBundle.originalBundle = bundle
+
+    # store path to map file so we can delete it later
     exorcisedBundle.mapFilePath = mapFilePath
 
     return exorcisedBundle
 
+
   getCompileResult: (bundle) ->
+
     result = source: @getString bundle
 
     # read the generated source map from the file
     sourceMap = fs.readFileSync bundle.mapFilePath, encoding:'utf8'
+
     # delete source map file
     fs.unlinkSync bundle.mapFilePath
+
     # add source map to result
     result.sourceMap = sourceMap
 
     return result
 
+
   getBasedir: (file) ->
-    # get root folder for file, use npm-container when an app file.
+
+    # get app/package root folder for file, use npm-container when an app file.
     folderPath = file.getRoot('npm-container')
-    # convert to a path on the system, resolve it against CWD, use real folder name
+    # convert to OS style, resolve it against CWD, use real folder name
     Plugin.convertToOSPath path.resolve folderPath, '.npm/package'
+
 
   getBrowserifyOptions: (file, option) ->
 

      # TODO: modified time of npm-shrinkwrap.json file OR hash of contents
    ]

  compileResultSize: (compileResult) ->
    compileResult.source.length + compileResult.sourceMap.length

  addCompileResult: (file, compileResult) ->
    file.addJavaScript

      data: compileResult.source,
      sourceMap: compileResult.sourceMap


  getOptionInfo: (file, files) ->

    # generate path to options file from `file`, then get options InputFile
    packageName = file.getPackageName()

    # app file has no package, it's null, so, use empty string
    packageName ?= ''

    # replace 'js' with 'options.json'
    tail = file.getPathInPackage()[...-2] + 'options.json'

    # combine to form the weird path to the options file
    optionFileKey = "{#{packageName}}/#{tail}"

    # use it to get the InputFile representing the options file
    optionInputFile = files.get optionFileKey

