Currently the read callback doesn't support a user argument, which severely limits it's usefulness. Is there a fundamental reason this isn't possible?
If it's helpful I can submit a PR with that change. I'd also like to see async versions of the write calls and could include those too.