computer-player: split off complete_move function
computer-player: crash on invalid moves

Fortunately, this doesn't happen anymore. Let's make sure it stays that
way.
computer-player: add another assertion