docs: def normalize(version_string, max_version_parts=4):
      """turn a string representing a version into a normalized version list.
      Version lists are directly comparable using standard operators such as
      >, <, ==, etc.
  
      Parameters:
        version_string - such as '3.5' or '3.6.3plugin3'
        max_version_parts - version strings are comprised of a series of 4 tuples.
                            This should be set to the maximum number of 4 tuples
                            in a version string.
      """
      version_list = []
      for part_count, version_part in enumerate(version_string.split('.')):
          try:
              groups = _version_part_re.match(version_part).groups()
          except Exception, x:
              raise NotAVersionException(version_string)
          version_list.extend(t(x) for x, t in zip(groups, _normalize_fn_list))
      version_list.extend(_padding_list * (max_version_parts - part_count - 1))
      return version_list