Make str/str8 comparisons return True/False for !=/==.

Code that has been returning str8 becomes much more apparent thanks to this
(e.g., struct module returning str8 for all string-related formats or sqlite3
passing in str8 instances when converting objects that had a __conform__
method).  One also has to watch out in C code when making a key from char *
using PyString in the C code but a str instance in Python code as that will not
longer compare equal.

Once str8 gains a constructor like the current bytes type then
test_modulefinder needs a cleanup as the fix is a little messy in that file.

Thanks goes to Thomas Lee for writing the patch for the change giving an
initial run-down of why most of the tests were failing.
diff --git a/Misc/NEWS b/Misc/NEWS
index 86c5a59..c0fe108 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -11,6 +11,12 @@
 Core and Builtins
 -----------------
 
+- Comparisons between str and str8 now return False/True for ==/!=.  sqlite3
+  returns str8 when recreating on object from it's __conform__ value.  The
+  struct module returns str8 for all string-related formats.  This was true
+  before this change, but becomes more apparent thanks to string comparisons
+  always being False.
+
 - Replaced `PyFile_FromFile()` with `PyFile_FromFd(fd, name. mode, buffer, 
   encoding, newline)`