Added extra getter methods to move to allow for reversability
Made queen upgrading more modular
Refactored ChessMoveTracker to be a decendent of the stack class
This allows move undoing to be possible by popping off the last move
Refactored test to use the new stack structure of the move tracker
Added suppourt to reverse previous move
Refactored to use stack structure
Added suppourt to tell if move will put king in check
Fixed logic to verify check for either color
Made piece previously moved check entire stack