Any reason you don't pass in the delegate to TimedIterator's constructor as opposed to a separate setter?