anchor.diff:  Cache<String, String> cacheContext = Cache.of(Caching.getCache("cacheName", String.class, String.class));
   
   // Decorate your call to BackendService.doSomething()
  -Try.CheckedFunction<String, String> cachedFunction = Decorators.ofCheckedSupplier(() -> backendService.doSomething())
  +Try.CheckedFunction<String, String> cachedFunction = Decorators
  +    .ofCheckedSupplier(() -> backendService.doSomething())
       .withCache(cacheContext)
       .decorate();
   String value = Try.of(() -> cachedFunction.apply("testKey")).get();
  
positive.code: To highlight a few differences to Netflix Hystrix:
  
  In Hystrix calls to external systems have to be wrapped in a HystrixCommand. This library, in contrast, provides higher-order functions to decorate any function, lambda expression or method reference with a http://martinfowler.com/bliki/CircuitBreaker.html[Circuit Breaker]. Furthermore, the library provides a custom RxJava operator to decorate any `Observable` or `Flowable` with a Circuit Breaker.
  In the following I call the higher-order functions decorators. The decorators return an enhanced version of your function. Furthermore, the library provides few additional decorators to retry failed functions, limit call frequency or cache function results. You can stack more than one decorator on any given function. That means, you can combine a RateLimiter and Retry decorator with a CircuitBreaker decorator. Any decorated function can be executed synchronously or asynchronously by using a CompletableFuture or RxJava.
  However, features such as Request Collapsing and Bulk Heading are not in the scope of this library. 
  
  == Examples
  
negative.code: RateLimiter rateLimiter = RateLimiter.of("backendName", config);
  
  // Decorate your call to BackendService.doSomething()
  Try.CheckedSupplier<String> restrictedSupplier = Decorators
      .ofCheckedSupplier(() -> backendService.doSomething())
      .withRateLimiter(rateLimiter)
      .decorate();
  
  // First call is successful
  Try<String> firstTry = Try.of(restrictedSupplier);
  