Add Future::wrap function