Refactor bespoke irgen entrypoints
Summary: In this diff we unify "handleBespokeInputs" and "handleVanillaOutputs" into a single wrapper that takes the vanilla irgen callback. Doing so simplifies how our code is called, and lets us keep the source/sink distinction internally. In the next diff, we'll use this refactored version to do a better job of profiling sources: in particular, we'll no longer treat same-type casts like dict-cast-to-dict as sources.
Reviewed By: colavitam
Differential Revision:
D28005694
fbshipit-source-id:
3f7caba1f753f5b7a682d887f86485ddec332f60