Don't configure the KVS extensions unless we're using them.
Add handle.terminate methods to WT_COLLATOR, WT_COMPRESSOR and
WT_DATA_SOURCE handles, called when the handle is discarded,
intended to allow general cleanup when the database is closed.

Re-work the BDB KVS and Memrata support to handle multiple open
databases, that is, get rid of all of the globals.
Merge branch 'develop' into terminate-method
Call destroy functions on error. (#531)
Push most of __conn_close down into __wt_connection_close so that everything is cleaned up after errors in open.
refs #531
All cleanup happens in the top-level open call.
refs #531
Don't wait in the LSM worker thread if the tree needs to be switched.
Merge pull request #532 from wiredtiger/error-leak

Call destroy functions on error. (#531)
Merge branch 'develop' into terminate-method

Conflicts:
	src/conn/conn_api.c
Merge pull request #530 from wiredtiger/terminate-method

Terminate method