added find(), isLeaf(), isRoot(), and height()