Lock methods on ``Tree``, ``Branch`` and ``Repository`` are now expected to return an object which can be used to unlock them. This reduces duplicate code when using cleanups. The previous 'tokens's returned by ``Branch.lock_write`` and ``Repository.lock_write`` are now attributes on the result of the lock_write. ``repository.RepositoryWriteLockResult`` and ``branch.BranchWriteLockResult`` document this. (Robert Collins)
``log._get_info_for_log_files`` now takes an add_cleanup callable. (Robert Collins)