Split Hardware Simulation from MainWindow

I've separated the majority of the functionality of simulating the
"hardware" from the MainWindow, next up is the Testing controls.
Not sure what this is
Redesign to match MVC design

Removal of most code
Fake logic hooked up

For testing of CoffeeMakerGUI, MainWindow has been directly linked to
GUI functions without controller logic.
Implemented Pattern/Command/Template Structure

Added interfaces, added factory and all controllers (no logic inside
yet), MainWindow and the GUI are still directly connected, next step is
to break these connections.
Dependencies Corrected

MainWindow now connects buttons and combo boxes to Controllers instead
of the GUI. Controller logic and testing still need to be written.
Merge pull request #6 from skywarka/C#/XAML

C#/xaml