ensure that `reset_db` runs only once by default

Use `reset_db!` to force additional reloads.  This is to ensure
that in standard testing the db is reset only once per test run.
This helps ensure the tests are as fast as possible.

**Note**: this needs better testing.  To do that, though, I want
to add an "adapter spy" object to test with.  This involves more
changes than I want to put in this PR.  I will follow this up with
better testing in the next PR.

@jcredding ready for review.