C++ template library for computing a longest common subsequence (diff)