If we use pyfive for the HDF file reading, we get a pure python implementation which we can use without any worries about threadsafety. It also allows us direct access to the b-tree without the need for kerchunk.
The use of pyfive in this way depends on the pull request Bryan has submitted to pyfive (or we have to use our own fork).
An initial approach is in a new branch.