cleanup Range code - introducing RangeTraits namespace