Add line-based differ (based on tokenizedDiff).

Factor out 4 HighlighterIterator into one generic one.