add suffix tree implementation; add longest common substring