Refactor IsBindableVisitor's handling of generic nominals.
Refactor IsBindableVisitor's handling of generic nominals.

In order to correctly handle upper bound requirements arising from conditional conformances,
we need to be able to ingest requirements introduced by conditional conformance extensions,
which means recursively visiting the parent is no longer possible to do cleanly. It is
simpler to substitute the generic type's entire generic context as a whole.

gregomni/swift,apple/swift,glessard/swift,benlangmuir/swift,apple/swift,ahoppen/swift,glessard/swift,glessard/swift,xwu/swift,atrick/swift,benlangmuir/swift,atrick/swift,JGiola/swift,JGiola/swift,roambotics/swift,gregomni/swift,gregomni/swift,apple/swift,benlangmuir/swift,benlangmuir/swift,gregomni/swift,ahoppen/swift,rudkx/swift,roambotics/swift,glessard/swift,rudkx/swift,gregomni/swift,ahoppen/swift,JGiola/swift,gregomni/swift,xwu/swift,JGiola/swift,roambotics/swift,xwu/swift,apple/swift,roambotics/swift,rudkx/swift,atrick/swift,xwu/swift,glessard/swift,atrick/swift,roambotics/swift,atrick/swift,JGiola/swift,atrick/swift,roambotics/swift,ahoppen/swift,rudkx/swift,glessard/swift,rudkx/swift,benlangmuir/swift,ahoppen/swift,xwu/swift,xwu/swift,apple/swift,ahoppen/swift,JGiola/swift,benlangmuir/swift,apple/swift,xwu/swift,rudkx/swift