code: func Height(it Iterator, until Type) int {
  	if it.Type() == until {
  		return 1
  	}
  	subs := it.SubIterators()
  	maxDepth := 0
  	for _, sub := range subs {
  		h := Height(sub, until)
  		if h > maxDepth {
  			maxDepth = h
  		}
  	}
  	return maxDepth + 1
  }
docs: // Height is a convienence function to measure the height of an iterator tree.