material key in board
with the usual stuff:
- stack optimization to only compute on play() rather than undo()
- computed from scratch in verify_keys(), to be 100% bugproof (thanks to assert)
No functional change
signature = 6730651