Fix timestamp calculations so they are based on SystemClock.elapsedRealtimeNanos()

* TODO - some of the queued event delays still seem off