Smarter Range constructor.