bytesIO sucks. how bout StringIO?