- Use explicit lock methods on a branch, rather than doing it implicitly from the Branch constructor and relying on destroying the branch to release the lock.
- New with_readlock, _with_writelock decorators for branch methods.
- Branch locks can now be taken several times by a single caller, but they forbid upgrading or downgrading.
- Don't need assertions about whether the branch is locked anymore.