(PUP-3604) Rework handling of :ensure with a version

:-) That's not an uncommon exclamation when I work on this stuff ;-)