Refactor to separate core logic from SQL-specific logic.

Beginnings of Mongo version.
More mongo code, doesn't run scripts yet.
Running Mongo scripts
Implement IDisposable in MongoDbscConnection.

Implement IDisposable in MongoDbscConnection even though
the Mongo driver does its own connection management and
its classes do not implement IDisposable.
Fix bug in cloning update options.
Import support for mongo.
Missing copyright footer.
Switch existing code to ImportUtils.DoTimedOperation.

Switch existing code to ImportUtils.DoTimedOperation for
shorter code.
Check if mongo, mongodump, and mongorestore are present.

Check if mongo, mongodump, and mongorestore are on the
PATH when operations that need them are run.
Check if mongo database exists before "creating" it.
Installer for mongodbsc.
First integration test for mongodbsc.
More integration tests for mongodbsc.
dbCreateTemplate arg for mongodbsc. More tests.
Fix for creating MongoDB databases when using auth.

When creating a database, first connect to the admin database,
verify the database being created does not exist,
connect to the new (not yet existing) database, add self as a user
in the new database if using auth, and create and drop a
temp collection to make sure the database actually gets created.
Finish up MongoDB auth tests.
Integration tests for mongodbsc update.
Use mono in mongodbsc integration tests on non-Windows.
Checkout integration tests for pgdbsc
Update integration tests for pgdbsc