Use weakrefs to hold onto classes #2521.

This also causes the _weakref module to be built into the core.
diff --git a/Misc/NEWS b/Misc/NEWS
index 29bc276..349cc7f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -31,6 +31,9 @@
 Library
 -------
 
+- Issue #2521: Use weakrefs on for caching in the abc module, so that classes
+  are not held onto after they are deleted elsewhere.
+
 - Issue #9626: the view methods for collections.OrderedDict() were returning
   the unordered versions inherited from dict.  Those methods are now
   overridden to provide ordered views.
@@ -188,6 +191,9 @@
 Extension Modules
 -----------------
 
+- As a result of issue #2521, the _weakref module is now compiled into the
+  interpreter by default.
+
 - Issue #9324: Add parameter validation to signal.signal on Windows in order
   to prevent crashes.