GUI handles test cases properly

The code is still very messy. When Ryan finishes certain handling
functions, I'll be able to clean up the code much more. In chess.engine,
GameState constructor has been temporarily declared public.