firstlast.go
func First(n int) Filter {
	return FilterFunc(func(arg Arg) error {
		seen := 0
		for s := range arg.In {
			if seen >= n {
				break
			}
			arg.Out <- s
			seen++
		}
		return nil
	})
}
func First(n int) Filter {
	return FilterFunc(func(arg Arg) error {
		seen := 0
		for s := range arg.In {
			if seen >= n {
				break
			}
			arg.Out <- s
			seen++
		}
		return nil
	})
}
// First yields the first n items that it receives.