Switch arguments of copyChildNodes() to have target first + better API dox
Define arguments to core.UnitTestRunner.areNodesEqual(...) as "actual, expected"

Matches the current logging output and also the order of arguments to isResultCorrect()
Merge pull request #255 from kossebau/smallImprovementsForTests

Small improvements for tests
Add flag "showRemoveButton" to AnnotationViewManager, to not show the button if wanted
Merge pull request #262 from kossebau/hideAnnotationRemoveButtonInViewMode

Add flag "showRemoveButton" to AnnotationViewManager, to not show the button if wanted
Ensure that all annotations are displayed (by setting min-height to sizer element)
Merge pull request #264 from kossebau/extendAnnotationPaneAsNeeded

Ensure that all annotations are displayed (by setting min-height to sizer element)
Switch to SVG polygons for drawing a SelectionView.

Adds an SVG overlay that takes no pointer-events,
and uses a polygon element inside to it draw
selections with stroke and fill of the user's
color.
Removes the 3 divs used previously.
Merge pull request #265 from adityab/polygon-selections

Switch to SVG polygons for drawing a SelectionView.
Make cursor sub-element CSS styles component-specific

Previous implementation was using the element type (span or div) to
determine if the element was a handle or caret. This is problematic if
additional elements are placed inside the cursor node (as necessary for
proper IME support)
Allow multiple subscribers to the cursor update event
Workaround for Firefox selection.collapse bug

Attempting to collapse a selection if a content editable element is the
current activeElement for the document will cause the collapse call to
throw an exception.

https://bugzilla.mozilla.org/show_bug.cgi?id=773137
https://bugzilla.mozilla.org/show_bug.cgi?id=787305
Let EventManager.focus restore positions for all scrollable parents

Scrollable parents that had no current scroll offset were being ignored.
This meant that the view could end up reset at a non-0 scroll offset when
focus was restored to the event trap.
Support text input using the OS’s IME system

This change extends the use of the event trap to allow in-line character addition
using the OS's IME. The event trap will now be moved to within the local user's
cursor block, and will become visible when a composition start event is detected.

This has been tested on Chrome, FF & Safari on all platforms. In addition, this
enables support in FF on Android.

Known issues
- No IME support on Chrome under Linux. The compositionend event emitted by Chrome
contains no data, so the input character can't be detected.
Improve Opera 11 compatibility slightly
Support back-to-back composition end & start events

Some IMEs will stack end & start requests back to back. If the selection
is modified between an old and new session (e.g., via text updates), the
new composition session never starts. One mainstream example of this is
inputting text using MacOS’s option+char method
Workaround Safari post-composition key press event error

When composition session is ended on Safari under MacOS by pressing
another text char, Safari incorrectly reports the next keypress event’s
“which” value as the last compositionend data, rather than the new key
that was pressed.