old_contents: #!/usr/bin/env node
  
  /**
   * Jit hash-object
   */
  var program = require('commander'),
      Blob = require('./common/blob');
  
  program
    // TODO
    .option('-t <type>', 'object type')
    // TODO
    .option('-w', 'write the object into the object database')
    // TODO
    .option('--stdin', 'read the object from stdin')
    // TODO
    .option('--stdin-paths', 'read file names from stdin')
    // TODO
    .option('--no-filters store file as is without filters')
    // TODO
    .option('--path <file>', 'process file as it were from this path')
    .parse(process.argv);
  
  
  content = '';
  
  if(program.stdin) {
    process.stdin.on('data', function(chunk) {
      content += chunk;
    })
    process.stdin.on('end', function() {
      run();
    })
  } else {
    run();
  }
  
  function run() {
    Blob.hash_object({content: content}, function(err, blob) {
      console.log(blob)
    });
  }
  
new_contents: #!/usr/bin/env node
  
  /**
   * Jit hash-object
   */
  var program = require('commander'),
      fs = require('fs'),
      path = require('path'),
      Blob = require('./common/blob');
  
  program
    // TODO
    .option('-t <type>', 'object type')
    // TODO
    .option('-w', 'write the object into the object database')
    .option('--stdin', 'read the object from stdin')
    // TODO
    .option('--stdin-paths', 'read file names from stdin')
    // TODO
    .option('--no-filters store file as is without filters')
    // TODO
    .option('--path <file>', 'process file as it were from this path')
    .parse(process.argv);
  
  
  content = '';
  
  if(program.stdin) {
    process.stdin.on('data', function(chunk) {
      content += chunk;
    })
    process.stdin.on('end', function() {
      run();
    })
  } else if(program.args.length > 0) {
    var file_path = path.resolve(program.args[0]);
    fs.readFile(file_path, 'utf8', function(err, data) {
      content = data;
      run();
    });
  }
  else {
    run();
  }
  
  function run() {
    var blob = new Blob();
    blob.hash_object({content: content}, function(err) {
      // console.log(blob);
    });
  }
  
subject: Allow filling content of a blob from file path