Duplicated code: Rename TicTacToeTest
Duplicated code: Create TicTacToeTest superclass
Duplicated code: Extract setUpRecorder()
Duplicated code: Extract startRecorder()
Duplicated code: Extract recorder methods in GameControllerTest
Duplicated code: Remove output stream from RowTest
Duplicated code: Extract recorder methods in TerminalViewTest
Duplicated code: Rename all OutputRecorders 'recorder'
Duplicated code: Pull up recorder methods to superclass.
Duplicated code 2: Extract StringLoader class
Duplicated code 2: Add HashMap to StringLoader
Duplicated code 2: Extract load method in StringLoader
Duplicated code 2: Add filepath arg to StringLoader constructor.
Duplicated code 2: Convert old usages to use StringLoader
Duplicated code 3: Add varargs to enqueue methods
Duplicated code 3: Convert enqueue usages to use varargs
Long Method: Extract parseString method
Long Method: Extract checkValidity, parseCoordinates
Extract minor helper methods.
Remove GameOverException. Add ExitManager.