Implementing a basic MVVM application