Fix a rather serious bug in chess-pos-move:

We were checking for king or rook moves to remove our castling flags if necessary,
but we did not remove the opponents castling flags if we took one of their rooks.

This led to rather invalid positions.  You could castle with your king and
the opponents piece.
Try to fix 045a93cb98dfd320e756ea9d9799ea92f0900bc6 a different way.

Restore the old behaviour (run game hooks before painting move),
but move the post-move hook from chess-game-move to chess-display-move.

This fixes the reentrancy bug while preserving error checks being done in
the game hooks.

Maybe rename post-move to post-display-move?
Refactor chess-plain-handler a bit.