If versioning is not enabled, then `get_bucket_versioning` can return an empty dict. If that happens, the code to enable versioning should still run! The logic for suspending versioning was also incorrect, so have updated that too. Fixes #20491