Have ScopedDbConnection_init() create the sdc with getScopedDbConnection() since that was always being done before it.

Rename to make_ScopedDbConnection().
Have it return a shared_ptr instead of a bare pointer so that users don't have to delete the object when finished.
Add a deleter class so that sdc->done() is done automatically when it passes out of scope.