Apply diff2.txt from SF patch http://www.python.org/sf/572113
(with one small bugfix in bgen/bgen/scantools.py)

This replaces string module functions with string methods
for the stuff in the Tools directory. Several uses of
string.letters etc. are still remaining.
diff --git a/Tools/idle/UndoDelegator.py b/Tools/idle/UndoDelegator.py
index 3ef14c3..54b0851 100644
--- a/Tools/idle/UndoDelegator.py
+++ b/Tools/idle/UndoDelegator.py
@@ -311,7 +311,7 @@
         strs = []
         for cmd in self.cmds:
             strs.append("    " + `cmd`)
-        return s + "(\n" + string.join(strs, ",\n") + "\n)"
+        return s + "(\n" + ",\n".join(strs) + "\n)"
 
     def __len__(self):
         return len(self.cmds)