An accumulator for reducer functions.
ReduxStore offers each ReduxBloc the opportunity to apply its own reducer
functionality in response to incoming ReduxActions by subscribing to the
"reducer" stream, which is of type
A ReduxBloc that does so is expected to use the ReduxAction and state provided in any Accumulator it receives to calculate a new state, then emit it in a new Accumulator with the original action and new state. Alternatively, if the Bloc doesn't want to make a change to the state, it can simply return the Accumulator it was given.