Add version.yml workflow that runs on pushes to main, parses
conventional commit messages since the last tag, determines the
semver bump (feat=minor, fix=patch, breaking=major), updates
Cargo.toml version, commits, and pushes a version tag. The tag
push triggers the existing release.yml publish workflow. Skips
chore(release) commits to prevent infinite loops.