SF 548651:  Fix the METH_CLASS implementation.
Most of these patches are from Thomas Heller, with long lines folded
by Tim.  The change to test_descr.py is from Guido.  See the bug report.

Not a bugfix candidate -- METH_CLASS is new in 2.3.
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index 76636a9..ed4593e 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -1464,12 +1464,12 @@
     a = (1, 2, 3)
     d = {'abc': 123}
     x, a1, d1 = spam.spamlist.classmeth(*a, **d)
-    veris(x, None)
-    vereq((spam.spamlist,) + a, a1)
+    veris(x, spam.spamlist)
+    vereq(a, a1)
     vereq(d, d1)
     x, a1, d1 = spam.spamlist().classmeth(*a, **d)
-    veris(x, None)
-    vereq((spam.spamlist,) + a, a1)
+    veris(x, spam.spamlist)
+    vereq(a, a1)
     vereq(d, d1)
 
 def staticmethods():