working game except for checkmate