Add contains option to checks. (#620)

* Add contains otion to checks.

* Add test for teh contains option of CHECK_THROWS_WITH.

* Adress comments Saalvage: move compare function to Contains, add operator== and make m_exception_string a union."

* Add new tests.

* Attempt to fix windows specific warning about unions.

* Attempt 2 to fix windows specific warning about unions.

* Attempt 3 to fix windows specific warning about unions.

* Attempt 4 to fix windows specific warning about unions.

* Return union to a struct.

* Fixing and refactoring

* Docs

Co-authored-by: Salvage <29021710+Saalvage@users.noreply.github.com>
diff --git a/examples/all_features/stringification.cpp b/examples/all_features/stringification.cpp
index adca1e7..2add560 100644
--- a/examples/all_features/stringification.cpp
+++ b/examples/all_features/stringification.cpp
@@ -151,6 +151,8 @@
     CHECK(doctest::IsNaN<float>(std::numeric_limits<float>::infinity()));
     // can't test actual nan because it's implementation defined
 
+    CHECK("a" == doctest::Contains("aaa"));
+
     // lets see if this exception gets translated
     throw_if(true, bla1);
 }