Made a start on MVVM