Fix start event timestamps in Firefox

https://bugzilla.mozilla.org/show_bug.cgi?id=238041
Add t0, duration, dt and speed props to events

t0
--
timeStamp of the starting event (approx the time of the
mousedown/touchstart before the move that starts the action)

duration
--------
(this.timeStamp - this.t0).

dt
--
For start events this.dt === 0.
for move and end events, it is the change in time since the previous
event was created.

speed
-----
for start events speed === 0.
For move events speed is the pixels moved per second
=> |(this.dx, this.dy)| / (this.dt / 1000)
For end events speed is the average speed of the event sequence.
=> |(this.dx, this.dy)| / (this.duration / 1000)
Rename interact.touch... to interact.getTouch...

getTouchAverage
getTouchBBox
getTouchDistance
getTouchAngle
Change order of listener excecution

 1. bound with Interactable#on()
 2. assigned to interactable.onaction =
 3. bound globally with interact.on()
Improve 'tap' event properties

Set currentTarget to be the element of the Interactable that the event
was fired on. And copy inherited properties.