acu78070 - Ensuring next tick will be scheduled
    
If @tick_queue.shift.call raised an exception, we would
not schedule the next tick nor would we reset tick_queue_running
to false. As a result, the scheduling of the current
tasks as well as any tasks added to the tick_queue 
will never be processed. 
This code change ensures that we schedule the
next tick or set tick_queue_running back to false.