      "    * Yes\n",
      "* For simplicity, can we use just a Node class without a wrapper Tree class?\n",
      "    * Yes\n",
      "* Do we have to keep track of the parent nodes?\n",
      "    * This is optional"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
 
</s> remove     "    * This is optional"
 </s> add     "    * This is optional\n",
    "* Can we assume this fits in memory?\n",
    "    * Yes" </s> remove     "If the `root` input is `None`, return a tree with the only element being the new root node."
 </s> add     "If the `root` input is `None`, return a tree with the only element being the new root node.\n",
    "\n",
    "You do not have to code the in-order traversal, it is part of the unit test." </s> remove     "If the `root` input is `None`, return a tree with the only element being the new root node."
 </s> add     "If the `root` input is `None`, return a tree with the only element being the new root node.\n",
    "\n",
    "You do not have to code the in-order traversal, it is part of the unit test."
    "    * This is optional\n",
    "* Can we assume this fits in memory?\n",
    "    * Yes"
      "    * Yes\n",
      "* For simplicity, can we use just a Node class without a wrapper Tree class?\n",
      "    * Yes\n",
      "* Do we have to keep track of the parent nodes?\n",
    "    * This is optional\n",
    "* Can we assume this fits in memory?\n",
    "    * Yes"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
keep keep keep keep replace keep keep keep keep keep
 Polish bst challenge and solution (#75)

Update constraints, algorithm discussion, and code. 
graphs_trees/bst/bst_challenge.ipynb