In-memory databases are now retained during testing.

* ShadowSQLiteOpenHelper and ShadowSQLiteDatabase no longer use static
  connection state.
* InMemory database connections are not actually closed, they just act
  like it now.
* In-memory databases scoped by name, just as filename-based ones are.
* ShadowSQLiteDatabase.resetInMemoryDatabases() can be used to reset
  test databases.
* Existing tests pass without change. Added test for new functionality.

Solves the same problem as #190 but in a different way.