Necessary refactoring of parameter types propagated through source.
This version can store state after receiving SIGINT. This is achieved by polling FIFO read state;