Added some tests and refactored how the signals are connected
Added ViewModelTests