def create_tree(vupper, vlower, &block)
      @root = Node.new(vupper, vlower, @depth)
      @root.create_children &block
    end
def create_tree(vupper, vlower, &block)
      @root = Node.new(vupper, vlower, @depth)
      @root.create_children &block
    end
The block is passed node itself as parent and the vector midpoints of
 its children to be.

 The block sets is own refob, and returns either true, in which case
 all the children are created, or it returns false, in which case none
 of the children will be created, in effect, marking itself as a leaf
 node.