Move deadline_alerts into their own table for UI integration
Moves the DeadlineAlert definitions out of the serialized_dag and into their own table in order to make UI integration easier for @bbovenzi.
I kn ow I tagged a lot of you. This is my biggest migration to date so I'd appreciate extra eyes on the SQL queries in particular. I put together a very extensive manual testing plan that consists of "paste this command into the terminal and you should see this output" steps for testing upgrading and downgrading with and without the COMPRESS_SERIALIZED_DAGS flag enabled. Double-checking that those testing commands are valid would also be a great help.
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in airflow-core/newsfragments.
I just briefly looked at callback related changes but will try to take a more thorough look later if I get a chance
Some of those commits were trial and error so I'm cleaning up the commits and clearing ou5t some unnecessary changes.
Should fix Ephraim's concerns about the serialized dag and resolved a merge conflict