`.getCurrentState()` & `.setSingleSelectionRange()`

This is for #512.

It should return an object that contains the output of `rawHtml()` and perhaps the selection.
As in, the "magic" would not be performed.