Change initdb to only use migration on existing databases.

Before running `make` in local development would stamp an existing DB
with the lastest version first, and then try to run any missing migration
steps. Now we check if there's an existing alembic_version first, and if
so only run the migration steps.
Extend test DB cleanup to drop all tables.

I ran into this problem when removing the Measure model. Since the model
wasn't there anymore `_Model.metadata.drop_all(engine)` didn't remove it.
This left the measure table orphaned in the test database. Now we actually
remove all tables in the test database, not just those known to our current
model metadata.