moved the base part of the move validation to a separate method; now when checking the opponent, checking whether the chess piece that is threatening their king can be taken by one of their pieces
now when the king is being attacked, checking whether the path from the king to the attacker can be intercepted