I’ve enabled object versioning in S3 (and experimenting with GCS), but I’m a bit unclear on how the version lifecycle works, especially with overwrites and deletions. How do you typically manage older versions and avoid storage bloat? Are there any gotchas I should know about?