tests: use assertIsInstance instead of open-coding it

unittests offers an assertIsInstance so we don't need to do the
type(x) == y pattern.

Signed-off-by: Jeff Mahoney <jeffm@jeffreymahoney.com>
database: add ability to describe tables and confirm requires columns

We want to be able to check whether the database schema looks right when
we connect rather than find out after a failed query.

Signed-off-by: Jeff Mahoney <jeffm@jeffreymahoney.com>