code: def split_token_in_parts(token):
      
      result = []
      current = []
      for part in token + (':', ):
          if part == ':':
              if current:
                  result.append(tuple(current))
                  current = []
          else:
              current.append(part)
  
      return result
docs: Take a Token, and turn it in a list of tokens, by splitting
      it on ':' (taking that as a separator.)