bpo-32030: Add Python/pathconfig.c (#4668)

* Factorize code from PC/getpathp.c and Modules/getpath.c to remove
  duplicated code
* rename pathconfig_clear() to _PyPathConfig_Clear()
* Inline _PyPathConfig_Fini() in pymain_impl() and then remove it,
  since it's a oneliner
diff --git a/Include/internal/pystate.h b/Include/internal/pystate.h
index 50ad2fc..9d85319 100644
--- a/Include/internal/pystate.h
+++ b/Include/internal/pystate.h
@@ -52,6 +52,10 @@
 
 #define _PyPathConfig_INIT {.module_search_path = NULL}
 
+PyAPI_DATA(_PyPathConfig) _Py_path_config;
+
+PyAPI_FUNC(void) _PyPathConfig_Clear(_PyPathConfig *config);
+
 
 /* Full Python runtime state */
 
diff --git a/Include/pylifecycle.h b/Include/pylifecycle.h
index 3db8832..fa75169 100644
--- a/Include/pylifecycle.h
+++ b/Include/pylifecycle.h
@@ -105,7 +105,6 @@
 #ifdef Py_BUILD_CORE
 PyAPI_FUNC(_PyInitError) _PyPathConfig_Init(
     const _PyMainInterpreterConfig *main_config);
-PyAPI_FUNC(void) _PyPathConfig_Fini(void);
 #endif
 PyAPI_FUNC(void)      Py_SetPath(const wchar_t *);
 #ifdef MS_WINDOWS