only save to redis if something has changed (fixes #8)