Variants of RwLock that support sublocks, opened for reading if the main RwLock
is opened for reading, opened for writing if the main RwLock is opened for writing.
This crate has been designed to permit refactoring of code using RefCell into
Sync code.