Add tap/drag touchpad gesture.

The mapper sends a DOWN when the finger is released then starts
a short timer.  If the finger is not pressed again before the timer
elapses, then the mapper sends an UP to complete the tap.  If the
finger is pressed again then the mapper starts sending MOVEs
as part of a drag.

Double/triple taps work as intended because we also start watching
for a new tap when the finger is pressed again.  If a new tap
occurs the old tap is also finished.  So each individual finger
short press/release cycle constitutes a distinct tap.

Change-Id: Iaa51182edee4378162a66adfd746088e93af2a30
3 files changed