Implement close_connections and drop_database on modulestores.

https://edx-wiki.atlassian.net/browse/LMS-2952

This PR implements common APIs on all the modulestores for `close_connections` and `_drop_database`.  All higher callers should go through Mixed to close the connections, unless it's a test that is explicitly testing only one modulestore type.

There is still future cleanup that can be done regarding removal of the _CONTENTSTORE singleton.  But we can do that as a separate story since it is unrelated to the current Modulestore work.

@dmitchell please review.
I must be missing something - why are you removing all these tearDown methods, rather than just changing them to call the newly implemented _drop_database method? There's 9 in this PR that have been removed or the drop db stuff has been removed from, but I don't see any like, base test class re-implementing the logic - if it's no longer necessary here I'd like to know why