Support Coverage runs using sys.monitoring
Since Python 3.12, there is a new sys.monitoring interface, described
in PEP 669. This is preferred over
the slower sys.settrace approach. This will be used by
Coverage 7.9.1+
as the default tracer from Python 3.14.
We now check the Coverage core mode. Up to Python 3.13, it is usually ctracer. In Python 3.14, Coverage will use the "sysmon" core. We only do our custom patching when using the "ctracer" or "pytracer" core. When the "sysmon" core is in use, Coverage works without us doing anything special.