Only set lastSelection in one place

Note that we had to rely on markers '<' and '>' because
yank resets its cursor before exitVisualMode().
Also a test was added for reselecting visual.