Losing time to Faraday - The Code Whisperer

Going back to Java, I'd have this in mind:

Faraday.withDefaultAdapter().addMiddleware(...)

or, perhaps even better, adding any other sensible defaults:

Faraday.withSensibleDefaultStack().addMiddleware(...)

I'd rather couple myself to Faraday by *intent* ("I want the default stack"), than by implementation details (knowing what the "default stack" includes and how to instantiate the pieces and in which order to apply them). If, later, I need those details, then I simply inline `withSensibleDefaultStack()` and I can see how it's done.

I love Misko's article. Warning people about singletons started my career. http://www.ibm.com/develope... I don't want a singleton: I want Faraday to hide some implementation details from me without making it impossible for me to gain access to them when, later, I need them. I think my proposal achieves that.