Refactor
Add redis persistence