Add highlight functions and provide events needed for renaming.
Maintain last cursor position after multi select mode.
Make turning on/off multiple cursors work.
Method rename.
Remove old tests.
All the untested new highlighting stuff.
Move tests to where the source lives.
Handle empty source code case (add the rename-mode file, to be tested).