bpo-36842: Implement PEP 578 (GH-12613)

Adds sys.audit, sys.addaudithook, io.open_code, and associated C APIs.
diff --git a/Modules/_pickle.c b/Modules/_pickle.c
index 87f3cf7..24a5d22 100644
--- a/Modules/_pickle.c
+++ b/Modules/_pickle.c
@@ -6659,6 +6659,11 @@
     PyObject *global;
     PyObject *module;
 
+    if (PySys_Audit("pickle.find_class", "OO",
+                    module_name, global_name) < 0) {
+        return NULL;
+    }
+
     /* Try to map the old names used in Python 2.x to the new ones used in
        Python 3.x.  We do this only with old pickle protocols and when the
        user has not disabled the feature. */