Use eventemitter3
Progress on checking the queue and applying in order