Space can change to shorter candidate list

When using space as selection key, it shall change to shorter candidate
list when it is in the last page of current candidate list. In this way,
user can use just space to replace down and right.

Closed #82
Add all_phrasing in CallPhrasing and Phrasing
Implement dynamic programming phrasing algorithm

DoDpPhrasing implements dynamic programming phrasing algorithm. Unlink
brute force algorithm, it has linear time complexity. However, due to
"tab at the end" feature, we still need brute force algorithm to get all
possible phrasing result.

Part of #73