code: public static <T> Future<T> Future(ThrowableFunction0<T> function) {
          return Future.apply(function);
      }
docs: Allows for easy creation of asynchronous computations that will be executed in the future. <br>
  The method relays the execution to {@link Future#apply(ThrowableFunction0)}. <br>
  Best used in conjunction with statically importing this method.
  
  <blockquote>
  
  <pre>
  import static javascalautils.concurrent.FutureCompanion.Future;
  
  Future&lt;Integer&gt; resultSuccess = Future(() -&gt; 9 / 3); // The Future will at some point contain: Success(3)
  Future&lt;Integer&gt; resultFailure = Future(() -&gt; 9 / 0); // The Future will at some point contain: Failure(ArithmeticException)
  </pre>
  
  </blockquote>
  
  @param <T>
  The type for the Future
  @param function
  The function to render either the value <i>T</i> or raise an exception.
  @return The future that will hold the result provided by the function
  @since 1.3
  @see Future#apply(ThrowableFunction0)