Allow moving caret, and insert/delete based on that position