Add functions isAnnotation and isAnnotationWrapper
to OdfUtils.

Add a function isInlineRoot to OdfUtils, which
indicates whether an element constitutes a 'root'
as respected by the RootFilter. In gui-less mode,
<office:annotation> is such a root, and in gui
mode, where we wrap annotations, we should also
treat the div with class "annotationWrapper" as
such a root.

Inline Roots are to be treated just like character
elements or frames with 'as-char', therefore add
a check for those to isCharacterElement as well,
alongside the one for isCharacterFrame.
* Use the new isInlineRoot method in OdfUtils, to
determine walkability around annotations via
the TextPositionFilter.

- In checkLeftRight, now that positions to the left
and right of an annotation are walkable by default,
block the position to the right of an annotation
if there is a grouping element (span, annotation
highlight, etc) to the right.

- Thus, now you can step to both the left and right
of a rangeless annotaiton.
If the annotaiton has a highlighted range, the cursor
won't be able to step between the <office:annotation>
element and it's annotationHighlight, so there
can be no strange text insertion there, and no
rewrapping is required over the newly inserted text
as it goes straight into the highlighted span
like everywhere else.

* Add tests to OdtDocumentTests for cursor positions
around annotations.

* Add tests to operationtests.xml (mostly bumping up
the positions of SplitParagraph operations after
adding annotations, now that 1 new position is exposed.
Split OdfUtils.isCharacterElement into
OdfUtils.isCharacterElement which only
checks for character elements (space, tab,
line-break) and OdfUtils.isAnchoredAsCharacterElement,
which reflects the fact that it checks for elements
which are 'as-char' (the way frames can be anchored),
in that they have the same kind of surrounding
positions' walkability as any character element
like spaces or tabs.

* Fix wrong documentation for this method.

* Update tests to reflect this, and also test
annotations and annotation wrappers.

* Update the other places in the codebase
to use the correct one of the two methods.
Rename from isCharacterElement to
isSpaceElement in OdtDocument, while
checking elements for downgrading spaces.
Merge pull request #243 from adityab/filter-annotations

Make positioning around annotations more usable/realistic