query.go
func UCount(iter Enumerable, p Predicate) uint {
	return iter.Enumerate(nil).UCount(p)
}
func UCount(iter Enumerable, p Predicate) uint {
	return iter.Enumerate(nil).UCount(p)
}
// UCount iterates over a list and keeps a running tally of the number of elements
// satisfy a predicate.