Origin/separate data change listeners

I made some silly mistake when merging master to feature branch, probably forgot to finish rebase :/
Code is working, should be ok to merge. 

Please delete the branch "separateDataChangeListeners"