Moved Location values from NewellSimonInteractor to Location
Extracted the MoveOption interface and the WinOption from LocationDecision
Improved name
Extracted the BlockOption from LocationDecision
Refactored to iterate over a list of MoveOptions instead of hardcoded steps
Moved classes related to NewellSimonInteractor inside a new package
Extracted ForkOption
Extracted BlockForkOption
Don't do work in the constructor!
Extracted CenterOption
Added test to ensure proper detection of a case in NewellSimonInteractor
Extracted OppositeCornerOption
Extracted CornerOption
Extracted SideOption
Extracted DecisionMaker from NewellSimonInteractor
Moved Results and StateAnalyser classes to the package where they are used
Improved name
Refactored FirstPossiblePlayInteractor to use the new classes
Reorganized classes inside ai package to represent the new generic concepts
Changed name