partial implementation of FileOutput, some additions to Bytes

Tested working in conjunction with node-png library in my project, rough breakdown of what was tested:

```cs
var data = Bytes.alloc(someLargeValue);
.. populating data via data[index] = byte;
var buffer = data.getData();
var png = untyped __js__("new (require('png)).Png(buffer, width, height, 'rgba')");
var out = sys.io.File.write("out.png");
out.write(haxe.io.Bytes.ofData(png.encodeSync()));
out.close();
```

The 'binary' argument to File::write isn't required in Node it seems and my partial implementation ignores it, there is no distinction between a stream for binary data output and a stream for textual output in Node.