The timing information isn't lost in Java either ... it's just that it's always sent around as 2 arguments.

It's very obnoxious ... but that's how it's done everywhere in Java and we have thus far avoided moving away from the idiomatic (though worse) Java approach. 

As an example, look at all of the methods in the Scheduler interface that accept `long delayTime, TimeUnit unit`.

If we're going to move away from idiomatic Java it would need to be done across the entire library for consistency.

Obviously it's a nicer class and others have done this before: https://www.google.com/search?client=safari&rls=en&q=java+TimeStpan&ie=UTF-8&oe=UTF-8#q=java+TimeSpan&rls=en&safe=off

What do others think we should do about this? @jmhofer @abersnaze @headinthebox @samuelgruetter @zsxwing @mttkay @JakeWharton @adriancole Do we make the breaking change to the entire library and change all uses of `long delayTime, TimeUnit unit` to `TimeSpan`?