Moved the Knockout viewModel stuff to a separate file so it's easy to add to
valveState display implementation
Missed this file last time