Fix deep dup error and add start of check logic
Finish and fix pawn implementation.
Add checkmate and winning messages
Merge branch 'check_and_checkmate'