title: fs.readFile read only 2 first symbols
body: <p>I try to use sdk fs like that: </p>
  
  <pre><code>  var fs = require('sdk/io/fs');
  
    fs.readFile(filepath, 'utf-8', function (error, data) {
      if (components.isSuccessCode(error)) {
        var lines = data.toString().split(/[\r\n]+/);
        for (var i = 0; i &lt; lines.length; i++) {
          listener.process(lines[i]);
        }
      }
      else {
        callback({error: error});
      }
    }
  </code></pre>
  
  <p>but i only get 2 first symbols of file(2 mb). Why i get such a weird behaviour?</p>
  
  <p>Declaration of readFile from sdk:</p>
  
  <pre><code>function readFile(path, encoding, callback) {
      if (isFunction(encoding)) {
        callback = encoding
        encoding = null
      }
  
      let buffer = null;
      try {
        let readStream = new ReadStream(path);
        readStream.on("data", function(data) {
          if (!buffer){
            buffer = data;
          }
          else{
            buffer = Buffer.concat([buffer, data], 2);
          }
        });
  
        readStream.on("error", function onError(error) {
          callback(error);
        });
  
        readStream.on("end", function onEnd() {
          // Note: Need to destroy before invoking a callback
          // so that file descriptor is released.
          readStream.destroy();
          callback(null, buffer);
        });
      }
      catch (error) {
        setTimeout(callback, 0, error);
      }
    };
  </code></pre>