factor out playing game
reformat tests more
make move separately
display separate from make_move
is_finished not in make_move
kill set_spot
try Tom's preferred
add caching