io.go
func WriteLines(writer io.Writer) Filter {
	return FilterFunc(func(arg Arg) error {
		for s := range arg.In {
			if _, err := writer.Write(append([]byte(s),'\n')); err != nil {
				return err
			}
			arg.Out <- s
		}
		return nil
	})
}
func WriteLines(writer io.Writer) Filter {
	return FilterFunc(func(arg Arg) error {
		for s := range arg.In {
			if _, err := writer.Write(append([]byte(s),'\n')); err != nil {
				return err
			}
			arg.Out <- s
		}
		return nil
	})
}
// WriteLines prints each input item s followed by a newline to
// writer; and in addition it emits s.  Therefore WriteLines()
// can be used like the "tee" command, which can often be useful
// for debugging.