An Engine is the Encompass notion of an ECS System. Much like the engine on a train, your Engines make the simulation move along.
{{% notice notice %}}
I never liked the term System. It is typically used to mean structures in game design and I found this confusing when discussing code implementation vs design.
This engine deals with a Component called a PauseComponent. PauseComponent has a timer which counts down based on delta-time. When the timer ticks past zero, the PauseComponent is removed. If a PauseMessage is received, a new PauseComponent is attached to the Entity specified by the message.
Notice that this Engine doesn't actually "do" the pausing, or even care if the Entity in question is capable of movement or not. In Engines that deals with movement, we can check if the Entities being moved have PauseComponents and modify how they are updated accordingly. This is the power of de-coupled logic at work.