Finally MVVM working