Fix compile error using Qt 4.8.5 on Windows
Merge pull request #438 from peitschie/more-win-fixes

Fix compile error using Qt 4.8.5 on Windows
Fast Pinch-Zoom support on the sizer.

This patch adds a new class ZoomHelper that
is used to control the zooming of the document
by API and/or touch gestures. CSS3D transforms
are used to do extremely fast bitmap scaling
of the sizer.
Show custom scrollbars in touch mode.

This is required because webkit on mobile
does not seem to show any scrollbars if
`-webkit-overflow-scrolling: touch` is not
enabled -- and we cannot enable that because
it's kinetic scrolling is not controllable
or trackable.

Enable virtual scrollbars when in scroll mode,
othwerwise disable them. This is done because
the scrollbar size/position makes no sense
immediately after a removeScroll() call, because
the perceived panning is done through CSS.
Implement runtime.requestAnimationFrame()
which abstracts away browser prefixes
and simply executes the callback if it is
not supported by the browser.

Also adds cancelAnimationFrame() similarly.
Link the zoom slider to the current zoom level
of the ZoomHelper.
Make ZoomHelper be able to switch the element
at runtime. Useful for undo support.
Merge pull request #433 from adityab/enable-pinchzoom

Fast Pinch-Zoom-Pan support on the canvas sizer
Make the zoom slider's zoomLevel=1
position centered.
Do not fire the zoom slider's onChange
event when programmatically setting the
slider position.
Merge pull request #441 from adityab/center-slider

Normalize zoom slider's position for the zoom range
Remove unnecessary @param declaration from
the Rhino runtime's cancelAnimationFrame.
Merge pull request #443 from adityab/cAF-warning

Remove unnecessary @param declaration from cancelAnimationFrame
Add failing unit test for crash when removing empty text nodes
Harden up OpRemoveText to better cope with empty text nodes

If an auto-collapsing container (e.g., a span) has text with a trailing
empty text node inside the container, the trailing text node is removed
immediately in order to collapse the span. This empty text node may also
appear in the textNodes to be removed, so each subsequent text element
needs to ensure it hasn't already been deleted.
Merge pull request #442 from peitschie/remove-text-defend

Harden up OpRemoveText to better cope with empty text node
Use compiled webodf.js in nativeQtClient
Fix outdated use of xmldom.XPath, now a namespace, no longer class
data is now a Uint8Array, so use subarray(), not slice(), on it
Exclude nativeQtClient from default target