I think we should be accepting byte arrays, or strings with a specified encoding.
[Much like node.js buffers](http://nodejs.org/api/buffer.html#buffer_buffer).