Add non-fatal assertions

Add the concept of "expectations", which still fail the test, but don't stop the rest of the test from running.