You can also use `memfiles`. There writing/reading is the same as accessing
memory. Besides being possibly simpler presenting an "as if you already read
the whole file into a buffer" view, it may also be much more efficient,
especially for byte-at-a-time operation where other APIs might do a lot of
behind the scenes work on a per-IO basis. Of course, to be usable as a
`MemFile`, the data needs to be random access (e.g. on the disk as opposed to a
network socket or pipe or some other unseekable input).