I believe there's a lot that's missing here, and honestly I don't
like how messy it feels. I can already see a couple edge cases
where things might break or work weirdly, but for now we can probably
gloss over them...
A read() analogue wouldn't be particularly useful here since we're
just poking at bytes, but having a way to get the "real" offset in
a file sure would be!