Add virtual ordered index

This lets us create a series that is indexed by DateTimeOffset, but
uses a virtual vector storing the keys under the cover.