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.
clear_existing_modulestores sets the singleton Modulestore variable to None so that it gets reinstantiated by tests that override the Modulestore django settings.