Prevent non-superscriptable object from exploding

Changing the order of the test for whether or not an error exists stops the
test runner from ending preemptively with a TypeError for object types that
are not superscriptable (for exmple, the Response objects that come from
Flask). This change prevents the TypeError when looking for
test['topic']['error'] but allows the VowAssertionError to bubble up,
including its message about the actual failed assertion while preserving
the related stack trace.