beginning to implement MVVM