Virtual IO: allow write() to return None