More accurate core.parse_version_string