have the stream witer (and reader) handle bytes instead of strings