more experimenting with better template traits tricks for Range<> types