diff: allow to count LCS of subarray
diff: incapsulate LinkedDiffPaths logic
diff: prepare for recursive call of IntLCS
diff: unify myMaxX/myMaxY values
diff: Patience diff algorithm

* add new algorithm
* do not initiate LCS-providers in case of none- and total- matching. This is common case at line-matching during post-process at diff correction
diff: fix patience algorithm
diff: add tests
diff: add comment
diff: do not enumerate strings if we don't need it

in one-side case we can easily calc changes
diff: do not calc diff if there is nothing to compare

Creating big file leads to big computation, but it can be avoided
diff: pre-allocate memory for StringBuilders
we restored broken API of ContainerUtil
diff: remember HighlightMode
diff: add ToggleAutoScroll button to the merge window
Merge branch 'diff'