 schedule a callback to be executed after the reducer pipeline is done mutating the global state. At that point, the middleware
will have access to the new state, and in case it cached the old state it can compare them, log, audit, perform analytics tracking, telemetry or
state sync with external devices, such as Apple Watches. Remote Debugging over the network is also a great use of a Middleware.</p>

<p>Every action dispatched also comes with its action source, which is the primary dispatcher of that acti