Moved to MVVM approach, and cleaner UI XAML