What this is really about is, "what should be the first run for a dag".
I think one way we might be able to solve this is to make `start_date` optional. And if you don't provide a start date, then your first run can be the next "interval end". *(if we add support for more cron-like scheduling, i.e. running at start of interval, then we could say next "interval start" for those timetables).* Then if you provide a start date, the first run would be the latest completed interval; and if you don't it will be the next one. Perhaps a way to interpret this behavior as consistent would be, the start date effectively dictates what date range is under the purview of the dag, and the start date for the latest completed interval is within that date range, and therefore it is a run that should be created. But then if you do not provide a start date, then when deploying, the start date should be _now_ -- so then the start date of the latest completed interval would be prior to the start date of the dag, and therefore should not be created.
