text: Title: ValueError when unpickling ParentedTree with Python 3.7 or higher
  Body: While working in Python 3.6, when unpickling a ParentedTree with Python 3.7 or Python 3.8 following ValueError occurs:
  `ValueError: Can not insert a subtree that already has a parent.`
  
  Following example script produces the Error:
  
  ```python
  import pickle
  from nltk.tree import ParentedTree
  
  
  tree = ParentedTree.fromstring('(S (NN x) (NP x) (NN x))')
  pickled = pickle.dumps(tree)
  tree_2 = pickle.loads(pickled)
  
  print(tree)
  print(tree_2)
  ```
  
  Output of Python 3.6 (working):
  ```
  (S (NN x) (NP x) (NN x))
  (S (NN x) (NP x) (NN x))
  ```
  
  Output in Python 3.7 / 3.8:
  ```
  Traceback (most recent call last):
    File "nltk_pickle_test.py", line 7, in <module>
      tree_2 = pickle.loads(pickled)
    File "pickletest/venv3.8/lib/python3.8/site-packages/nltk/tree.py", line 1192, in extend
      self._setparent(child, len(self))
    File "pickletest/venv3.8/lib/python3.8/site-packages/nltk/tree.py", line 1358, in _setparent
      raise ValueError('Can not insert a subtree that already ' 'has a parent.')
  ValueError: Can not insert a subtree that already has a parent.
  ```
  
  The error also occurs when saving and loading via a file. Tested with nltk 3.4.5.