De-~[] Reader and Writer

There's a little more allocation here and there now since
from_utf8_owned can't be used with Vec.
De-~[] Mem{Reader,Writer}
De-~[] IO utils