System Components introduced

Moved all code to more accurate MVVM paradigm
Started setting up the system components