Allow diff.ForEach to enumerate files, hunks, and lines with single call. Support use of closures for enumeration.