Credits Thanks a lot to Dan Abramov for building Redux - all ideas in here and many implementation details were provided by his library.