Require explicit general database closing.

To be idiomatic and play nicely as a library, control of the database
should exist solely in the hands of the library user and not in that
of the memory manager.

Major Caveat: A number of internal types around iterators and versions
retain their finalizers for now.  I need to take some time to diagram
their lifecycle to propose a solution for this.  This domain is where,
I believe, the nondeterminism I found was, but I want to start fixing
the easy part first.