Improve space selection rendering

Groups of spaces will be represented with space character elements which
are not considered or returned as part of the fetched text nodes. This
logic has now been adjusted to fetch all text elements, which will return
non-text node character element as well.
Calculate selection overlays using the right offset parent

The offset root is expected to be the offset parent for the created divs.
This should be the parent of the office:document node, not the office:document
node directly.
Draw selection overlay over space characters when selection backwards

Selections going backwards (to the left in a LTR language) were not
allowing character elements such as spaces to be selected, as the
selection view was incorrectly using the right-side of the selection
rectangle.

This introduced an issue where the direct client rect rounding
was causing the selection overlay to generally draw 1px to far
to the left at the start of the selection in Chrome, as these
rects are pixel-truncated in Chrome.

Using the bounding client rectangle instead produces higher accuracy as
these are allowed to have decimal values.