message: MCTSPLayer was looking for network.name, which was luckily being shoved into the object even though the member had been removed.  But really, that field shouldnt exist.  So we actually look at the basename of the saved file of the network instead.
diff: import copy
  import math
  +import os
  import random
  import sys
  import time
  @@ -218,10 +219,13 @@ class MCTSPlayerMixin:
  else:
  comments = []
  return sgf_wrapper.make_sgf(pos.recent, self.result_string,
  - white_name=self.network.name or "Unknown",
  - black_name=self.network.name or "Unknown",
  + white_name=os.path.basename(self.network.save_file) or "Unknown",
  + black_name=os.path.basename(self.network.save_file) or "Unknown",
  comments=comments)
  + def is_done(self):
  + return self.result != 0 or self.root.is_done()
  +
  def extract_data(self):
  assert len(self.searches_pi) == self.root.position.n
  