Fit/Timespan: fixed fix for bad lap times

fit timestamps (i.e. for lap start/end) are with 1sec precission - but
laps might start at *any* time.

As a result the actual timestamps might be off by up to 1sec due to lack
of precission.

Laps also have the lap_elapsed_time - which is stored in msec. I'm now
calculating the lap start based on the lap end timestamp + elapsed time.
This gets the lap duration fixed - but the absolut start/end time still
has jitter due to lack of precision.
Fit: parse more details of start/stop events
Fit: parse device messages