Add empty test cases to Rook class. Add imports for upcoming utility functions.
Add block_non_cache_spaces helper function.
Add generate_diagonal_spaces to tests.utils.functions.
Fix block_non_cache_spaces to generate blockers, not Pawns.
Mend broken utils import.
Implement test for actual_moves generation when non-naive_moves spaces are occupied for Rooks.
Move constant from pieces.utils to utils.constants. Remove pieces.utils.
Remove commented-out tests from Rook suite.
Add test for has_moved to Rook suite.
Update Pawns, Rooks, and Kings to reflect new has_moved logic.
Fix empty board test for Rook. Begin implementing actual_cache blockers test for Rook.
Fix empty board actual_cache generation tests for all pieces.
Implement Rook test for actual_cache blockers.
Implement Rook test for actual_cache blocking enemies.
Add Knight test for actual_moves when non-naive_moves spaces are blocked.
Add tests to Pawn for has_moved and actual_cache when non-naive_moves spaces are blocked.
Update Piece tests with decorators. Remove some deprecated Piece logic and corresponding tests.
Update Piece to bind move cache names to capture cache names in same_logic pieces. Update block_non_cache_spaces to check both caches.
Mend failing pawn test.
Revert block_non_cache_spaces to use only moves caches, not capture caches: that's what it's for.