Refactored pawn logic function. Tests so far are passing.
Added tests for moving pawns forward two spaces.
Refactored chess pawn logic again. Now we get a list of pawns that can make the specified move and compare it against the rank and/or file passed in, if specified. Code is much cleaner and less code is reused.
Factored code for comparing list of candidate pieces against a specific request rank and/or file into a separate function, as it will be reused in each evaluator.
Continuing to implement tests for pawn evaluation logic. Tweaking pawn logic so tests pass.
Continuing to implement tests for pawn evaluation logic. Tweaking pawn logic so tests pass.
Current tests for pawn logic are complete and passing. More tests will be added for capture logic.