pull repeat() up to Iterable
refine repeat()/initial()/terminal() on Sequential