Add result DeferredExecutor to avoid risk of double nesting
Add result DeferredExecutor to avoid risk of double nesting

Summary: Under some circumstances the DeferredExecutor might already have nested executors and this code adds more. Both incoming futures should instead nest within a fresh DeferredExecutor returned that is part of the SemiFuture from the operation.

Reviewed By: mpark

Differential Revision: D17121117

fbshipit-source-id: b4507bf5d7b0c98e5e5de6f73ff4bd3e2790374c

facebook/folly,facebook/folly,facebook/folly,facebook/folly,facebook/folly