We should talk about this, and I should review and make some case for where we use it. If I recall, I'm trying to force reads to block while writes are happening, but this may just mean I haven't thought through the relevant threading situations enough (or this is too fine-grained a synch point)