code: @Nonnull
      public static Consumer<Throwable> here(@Nonnull Consumer<? super Throwable> acceptor)
      {
          ContextException context = new ContextException();
          return (ex) ->
          {
              Throwable cause = ex;
              while (cause.getCause() != null)
                  cause = cause.getCause();
              cause.initCause(context);
              if (acceptor != null)
                  acceptor.accept(ex);
          }
docs: Creates a wrapping {@link java.util.function.Consumer Consumer} for
  the provided target.
  
  @param  acceptor
  The end-target for the throwable
  
  @return Wrapper of the provided consumer that will append a context with the current stack-trace