Separating data operations from ui. Step 1.5
Separating data operations from ui. Step 2. Finally moved data manipulation.
Separating data operations from ui. Step 2.5 Realtime update is back.