Issue #21591: Handle exec backwards compatibility in the AST builder.

Instead of deferring until runtime. This makes sure we hit the right
conditions in dealing with unqualified exec statements.

Reviewed by Victor Stinner. Test follows in a later commit.
Issue #21591: add test for qualified exec in tuple form.