Add a CompoundEvent class which represents
an event that can be represented as a logical
composition of several events working together.

As a first usage of this class, the 'longpress' event
is introduced.
This event fires once when a finger is placed against the
screen for 400 milliseconds without moving or lifting.

Select a word when long-pressing on it.
Add two handles to a selection's endpoints.

These are meant to be draggable.
Make selections touch-modifiable with handles.

Two new compound events:
* 'drag', which depends on 'touchstart', 'touchmove',
and 'touchend. It fires whenever a finger is placed
on an element with class 'draggable', and then moved.
* 'dragstop', which depends on 'drag' and 'touchend'.
It fires whenever the finger is lifted after a drag
on a draggable element.

SessionController, upon encountering a drag event on
a selection handle, updates the shadow cursor's selection
to match the one prescribed by the handle movement, thus
being very fast.

When a dragstop event is encountered, the selection of
the shadow cursor is fed to the local member's cursor
via SelectionController, thus utilizing an op.
Hide all selection handles by default,
unless EventManager adds a class touchEnabled
to the canvas element.
Hide selection handles of other users.