Use a custom assert macro

This allows for checks to fail and our teardown (`sphia_clear`) to still run.  Otherwise, we’ll have a corrupted database after any assertion fails.