title: TypeError: path must be a string with commander
body: <p>I want to read a file with commander:</p>
  
  <pre><code>#!/usr/bin/env node
  
  var fs = require('fs')
  var program = require('commander')
  
  program
    .version('0.0.1')
    .usage('&lt;keywords&gt;')
    .parse(process.argv)
  
  if(!program.args.length) {
    program.help()
  } else {
    var filename = program.args
  
    console.log('keys: ' + filename)
  
    fs.readFile(filename, 'utf8', function(err, data) {
      if (err) throw err
      console.log(data)
    })
  }
  
  $ ./m2k.js test.txt
  </code></pre>
  
  <p>However, I get the this error:</p>
  
  <pre><code>fs.js:430
    binding.open(pathModule._makeLong(path),
            ^
  TypeError: path must be a string
  </code></pre>
  
  <p>What am I doing wrong?</p>
  
  <p>(I have a file called <code>test.txt</code> in the same folder as <code>m2k.js</code>.)</p>