Extract CastleMoves class
Fix knight movement bug
Extract KnightMoves class