Only expand selection on multiple clicks with the primary mouse button

Chrome + WebKit increment the click count value for the MouseEvent even
if the user switches buttons. E.g., a double click then right click
will report the last event as {button: 2, detail: 3}, causing the
selection to expand to the paragraph bounds.

Now, the click count is only reported as non-zero if the current event
is with the primary mouse button (left by default, or the right button
if the user has switched their primary mouse button around).
Add todo for existing flaw in mouse-selection click handling
Merge pull request #525 from peitschie/right-click-expand

Only expand selection on multiple clicks with the primary mouse button
Add additional namespaces to OdtDocumentTests
Add a check to ensure document length is constant during position tests
Add additional checks around space elements
Preserve cursor step after annotation start when annotations are shown

Rendering annotations causes the number of available cursor positions
to be reduced by one. The original rule was added to stop the cursor
getting in between the annotation highlight span and the annotation end.
Rather than moving the valid cursor position to inside the span, this
simply removed the position entirely.

This patch adds additional logic to allow the cursor to stop just inside
the annotation's highlight span so the number of positions in the doc
stays consistent regardless of whether annotations are shown or not.

Incidentally, this also fixes issue #51.