调整代码顺序，拆分子函数。
添加root()/size()，以及test_size()。
添加pre_order()及测试用例。
优化in_order()算法。
添加search_starting_at_given_node().
调整测试用例执行顺序。