Refactor Version to use named captures

- No more magic number groups.
- More obviously correct.
- Already tested by existing version tests. :)
Merge pull request #310 from pjf/version_refactor

Refactor Version to use named captures