Model and controller

@bsoetaer 
Test by opening irb and creating a new CLIClient.  Use start and quit to start a new game or exit the program, and select a column to play by entering the zero-based column number.
Just realized this since I am writing a view right now. The contract for view specifies that the it needs to respond to turn_update and game_over. I thought this meant that the model would be calling game_over on the views. Is this not the case and the model will only ever call turn_update?