Add unfinished 3-opt algorithm.

It only performs 2-exchanges so far.