[ci skip] Implement DoDpPhrasing

DoDpPhrasing implements dynamic programming phrasing algorithm. It is
much faster then brute force one. However, due to "tab at the end"
feature, we still need brute force algorithm to get all possible
phrasing result.