Keywords are now required for task arguments, where before it was just convention. Turns out I was breaking convention A LOT. So you can't do "fs.exists('foo')" anymore, you have to do "fs.exists(path='foo')". This is to help make playbooks more self-documenting.
Also improved the she-bang line to: "#!/usr/bin/env -S python3 -m uplaybook.cli". This is longer, but also includes "python3" in the she-bang line so that editors can more easily auto-detect that it is python3 syntax.