add human player input and update generate moves