Issue #24225: Within idlelib files, update idlelib module names.
This follows the previous patch that changed idlelib file names.
Class names that matched old module names are not changed.
Change idlelib imports in turtledemo.__main__.

Exception: config-extensions.def.  Previously, extension section
names, file names, and class names had to match.  Changing section
names would create cross-version conflicts in config-extensions.cfg
(user customizations).  Instead map old names to new file names
at point of import in editor.EditorWindow.load_extension.

Patch extensively tested with test_idle, idle_test.htest.py, a custom
import-all test, running IDLE in a console to catch messages,
and testing each menu item.  Based on a patch by Al Sweigart.
diff --git a/Lib/idlelib/undo.py b/Lib/idlelib/undo.py
index 1c2502d..3e94b69 100644
--- a/Lib/idlelib/undo.py
+++ b/Lib/idlelib/undo.py
@@ -1,7 +1,7 @@
 import string
 from tkinter import *
 
-from idlelib.Delegator import Delegator
+from idlelib.delegator import Delegator
 
 #$ event <<redo>>
 #$ win <Control-y>
@@ -340,7 +340,7 @@
 def _undo_delegator(parent):  # htest #
     import re
     import tkinter as tk
-    from idlelib.Percolator import Percolator
+    from idlelib.percolator import Percolator
     undowin = tk.Toplevel()
     undowin.title("Test UndoDelegator")
     width, height, x, y = list(map(int, re.split('[x+]', parent.geometry())))