Add better failure error messages
Allow failures to occur when main test thread is not waiting