Implement Range except for mutation behavior.
Move helper functions to separate module.
Implement range behavior for node insertions / removals.
Implement range behavior for CharacterData mutations.
Implement range behavior for Text splits.
Stop tracking range on detach.
Implement range behavior for normalization.