Fixed some stuff and started rearchitecting to MVVM