for Range code - lose RangeBase (just put Openness at top level of Traversal namespace