Add @since markers to public APIs at release time, aided by a tool for identifying new public APIs

Description

Quite some time ago we started using @since in our epytext. This is a really nice feature to provide for end-users, so they can easily decide whether it's safe for them to use an API as they are learning about the API.

However, we don't apply this consistently, because everyone has to remember to do it to every public API each time they add a new public API. As a slightly smaller issue, all the old APIs are missing this information too.

Since this is a fairly automatic change, it's something of a waste of developer resources to require people to remember to do it anyway. Instead, some software should be involved.

It should be possible to take two versions of Twisted, discover all of the public APIs in each of them, and spit out a list of all of the APIs in one (the newer, hopefully) but not the other.

Programmatically rewriting the source code to include the @since marker is somewhat harder. Perhaps the first iteration of this would be a tool that just tells the release manager which APIs to add the marker to. A later tool might actually go all the way and automatically insert the markers.

It's definitely related and an implementation using those APIs might have lower runtime costs. I doubt it's actually *required* though. A more naive implementation can just load all of the code (in two processes if it doesn't want to try to deal with the complexities of loading two versions of one Python package).