removing dependency on goserial, now it just takes a ReadWriteCloser