BTreeData: Implements more posix-ish sparse file

Writing 0 bytes or truncating past file end increases file length.
BTreeData: Trivial simplification.
BTreeData: Coding style.

Also, reuse existing local.
BTreeData: Fix data loss on chunk overwrite not reaching chunk end.
Drop support for Python < 2.7
Drop support for Zope < 2.13
style: use new syntax (from Python 2.7) for set comprehensions
style: use new syntax (from Python 2.7) for dict comprehensions
style: dict() -> {} (or better)