whole_func_string: function getOptions(opts) {
      opts = opts || {};
  
      // command line arguments override options
      _.extend(opts, argv);
      delete opts.$0;
      delete opts._;
  
      // these values are used in multiple tasks, so set defaults here
      opts.unitTestCode = opts.unitTestCode || 'test/unit/**/*.js';
      opts.unitTargetCode = opts.unitTargetCode || 'lib/**/*.js';
      opts.testDir = opts.testDir || 'test';
      opts.rootDir = opts.rootDir || process.cwd();
      opts.targetDir = opts.targetDir || (opts.rootDir + '/lib');
      opts.tasksets = _.extend({ 'default': ['lint', 'test'] }, opts.tasksets);
  
      return opts;
  }
func_code_string: function getOptions(opts) {
      opts = opts || {};
  
      // command line arguments override options
      _.extend(opts, argv);
      delete opts.$0;
      delete opts._;
  
      // these values are used in multiple tasks, so set defaults here
      opts.unitTestCode = opts.unitTestCode || 'test/unit/**/*.js';
      opts.unitTargetCode = opts.unitTargetCode || 'lib/**/*.js';
      opts.testDir = opts.testDir || 'test';
      opts.rootDir = opts.rootDir || process.cwd();
      opts.targetDir = opts.targetDir || (opts.rootDir + '/lib');
      opts.tasksets = _.extend({ 'default': ['lint', 'test'] }, opts.tasksets);
  
      return opts;
  }
func_documentation_string: Set options defaults that are used for batter tasks
  @param opts Object with options for batter
  @returns {*|{}}