Parse Semantic Versioning 2.0.0 strings, bump major/minor/patch releases, manage prereleases, and compare version ranges (^, ~).