server makes response move to the client's move

minimax tree evaluated at arbitrary depth for the time being,
multithreading is going to be a bit more difficult than expected so it
is currently low priority