Caret with mouse and unit test refactoring

- Fix caret movement via mouse interrupting current edit
- Move backspacing tests to their own class