Cursor / Selection API changes in Editor

Here are my suggestions for editing the cursor and selection API. My main goal is consistency and symmetry. I'll pepper with inline comments explaining my decisions.
This one is interesting. Should we remove it? Or provide a cursor counterpart?