code: function instrumentString(code, options) {
      if (!options) {
          options = {};
      }
      var outputFileName = getInstOutputFile(options.outputFile);
      var instCodeOptions = {
          code: code,
          origCodeFileName: options.inputFileName,
          instCodeFileName: outputFileName,
          inlineSourceMap: options.inlineSourceMap,
          inlineSource: options.inlineSource
      };
      if (options.instHandler) {
          setupConfig(options.instHandler);
      }
      var result = J$.instrumentCode(instCodeOptions);
      clearConfig();
      if (options.astHandler) {
          var info = options.astHandler(result.instAST);
          if (info) {
              result.code = J$.Constants.JALANGI_VAR + ".ast_info = " + JSON.stringify(info) + ";\n" + result.code;
          }
      }
      return result;
  }
docs: instruments a code string, returning an object with the following fields:
  - code: the instrumented code string
  - instAST: AST for the instrumented code
  - sourceMapObject: mapping from IIDs to source info
  
  The options parameter can contain the following parameters:
  
  - inputFileName: this name will be associated
  with the original code in the source map.
  - outputFile: file name for instrumented code.  note that this
  method does *not* write the file; this information is just for
  the source map
  - inlineSourceMap: should source map information be embedded in the
  instrumented source code?
  - inlineSource: should the original source code be embedded in the
  instrument source code?
  - instHandler: An instrumentation handler object, for controlling which
  constructs get instrumented.  Possible properties are instrRead, instrWrite, instrGetfield,
  instrPutfield, instrBinary, instrPropBinaryAssignment, instrUnary, instrLiteral, and instrConditional,
  corresponding to the similarly-named properties documented in Config.js.
  - astHandler: a function that takes the instrumented AST as a parameter and returns a JSON
  object.  The instrumented code will store the result object in J$.ast_info, so it will be
  available to analyses at the scriptEnter() callback.
  
  @param code