Use abstract methods to make variables from DBLock abstract base private.

This protects locked, abort, and inEstablish in particular.

Made DBLock.lockSync final.