fun <T> Future<T>.getOrThrow(timeout: Duration? = null): T
Same as Future.get but with a more descriptive name, and doesnt throw ExecutionException, instead throwing its cause