This changes the behavior of cursor movement so that all cursors are
adjusted when a change is made to the buffer. Cursors don't have to be
manually moved after calling Insert or Remove, those functions will move
the cursor properly on their own.
This should fix issues 1-3 mentioned in the multiple cursors discussion.
Ref #5