[3.6] bpo-30779: IDLE: fix changes.delete_section calls in configdialog (GH-2667) (#2674)

Also improve test of config.ConfigChanges.delete_section.
Original patch by Cheryl Sabella.
(cherry picked from commit 6d13b22)
diff --git a/Lib/idlelib/configdialog.py b/Lib/idlelib/configdialog.py
index 6dc075f..a2cfaab 100644
--- a/Lib/idlelib/configdialog.py
+++ b/Lib/idlelib/configdialog.py
@@ -839,7 +839,7 @@
             return
         self.deactivate_current_config()
         # Remove key set from changes, config, and file.
-        changes.remove(keyset_name)
+        changes.delete_section('keys', keyset_name)
         # Reload user key set list.
         item_list = idleConf.GetSectionList('user', 'keys')
         item_list.sort()
@@ -873,7 +873,7 @@
             return
         self.deactivate_current_config()
         # Remove theme from changes, config, and file.
-        changes.delete_section('highlight')
+        changes.delete_section('highlight', theme_name)
         # Reload user theme list.
         item_list = idleConf.GetSectionList('user', 'highlight')
         item_list.sort()