executeLater method
Sets up a delayed event to be executed after the given time has passed
delay : How long from now to execute the delayed event, in milliseconds.
event : The delayed event to execute later
Implementation
void executeLater(int delay, DelayedEvent event) {
eventQueue.add((event, _currentTime + delay));
}