When definitively binding a type variable, visit its related constraints first.
When definitively binding a type variable, visit its related
constraints first.

This approach gives the solver just a little more direction,
re-simplifying constraints involving the just-bound type variable
first when we're definitively binding it. Note that we're only
handling this in the definitive binding case, and not the speculative
case, so we've only tackled the easier (and less rewarding) part of
the problem. Reduces the number of simplify() iterations by ~500
(3.7%) and Debug performance on swift.swift by < 1%.



Swift SVN r3114

slavapestov/swift,mightydeveloper/swift,nathawes/swift,allevato/swift,JGiola/swift,shahmishal/swift,kstaring/swift,khizkhiz/swift,jckarter/swift,glessard/swift,stephentyrone/swift,airspeedswift/swift,OscarSwanros/swift,Ivacker/swift,gottesmm/swift,gribozavr/swift,austinzheng/swift,swiftix/swift.old,alblue/swift,brentdax/swift,arvedviehweger/swift,mightydeveloper/swift,natecook1000/swift,karwa/swift,roambotics/swift,alblue/swift,cbrentharris/swift,sdulal/swift,djwbrown/swift,uasys/swift,benlangmuir/swift,cbrentharris/swift,JaSpa/swift,KrishMunot/swift,gmilos/swift,tardieu/swift,xedin/swift,arvedviehweger/swift,kentya6/swift,shajrawi/swift,swiftix/swift,Jnosh/swift,Ivacker/swift,arvedviehweger/swift,MukeshKumarS/Swift,johnno1962d/swift,tjw/swift,ben-ng/swift,emilstahl/swift,djwbrown/swift,dreamsxin/swift,alblue/swift,manavgabhawala/swift,kstaring/swift,hughbe/swift,johnno1962d/swift,IngmarStein/swift,calebd/swift,kusl/swift,manavgabhawala/swift,harlanhaskins/swift,JGiola/swift,adrfer/swift,Jnosh/swift,IngmarStein/swift,JaSpa/swift,benlangmuir/swift,OscarSwanros/swift,xwu/swift,cbrentharris/swift,kusl/swift,aschwaighofer/swift,kstaring/swift,jckarter/swift,felix91gr/swift,gmilos/swift,jtbandes/swift,tardieu/swift,LeoShimonaka/swift,milseman/swift,practicalswift/swift,amraboelela/swift,tkremenek/swift,bitjammer/swift,xwu/swift,kentya6/swift,Ivacker/swift,jtbandes/swift,codestergit/swift,atrick/swift,rudkx/swift,mightydeveloper/swift,xedin/swift,bitjammer/swift,lorentey/swift,emilstahl/swift,danielmartin/swift,tkremenek/swift,tinysun212/swift-windows,gribozavr/swift,devincoughlin/swift,jmgc/swift,karwa/swift,return/swift,tkremenek/swift,stephentyrone/swift,swiftix/swift,gregomni/swift,djwbrown/swift,sdulal/swift,milseman/swift,modocache/swift,ken0nek/swift,IngmarStein/swift,parkera/swift,xedin/swift,gregomni/swift,frootloops/swift,practicalswift/swift,roambotics/swift,harlanhaskins/swift,danielmartin/swift,SwiftAndroid/swift,austinzheng/swift,gribozavr/swift,jopamer/swift,uasys/swift,apple/swift,swiftix/swift.old,SwiftAndroid/swift,tjw/swift,devincoughlin/swift,gribozavr/swift,SwiftAndroid/swift,swiftix/swift,amraboelela/swift,zisko/swift,stephentyrone/swift,amraboelela/swift,ben-ng/swift,lorentey/swift,apple/swift,aschwaighofer/swift,hooman/swift,Ivacker/swift,khizkhiz/swift,kusl/swift,manavgabhawala/swift,deyton/swift,shahmishal/swift,devincoughlin/swift,tinysun212/swift-windows,tinysun212/swift-windows,russbishop/swift,johnno1962d/swift,mightydeveloper/swift,LeoShimonaka/swift,swiftix/swift.old,zisko/swift,lorentey/swift,allevato/swift,milseman/swift,hooman/swift,glessard/swift,codestergit/swift,tardieu/swift,Jnosh/swift,KrishMunot/swift,natecook1000/swift,CodaFi/swift,jopamer/swift,djwbrown/swift,OscarSwanros/swift,kstaring/swift,manavgabhawala/swift,adrfer/swift,KrishMunot/swift,kperryua/swift,hooman/swift,danielmartin/swift,jckarter/swift,dduan/swift,Jnosh/swift,SwiftAndroid/swift,gregomni/swift,airspeedswift/swift,jopamer/swift,emilstahl/swift,emilstahl/swift,kperryua/swift,roambotics/swift,nathawes/swift,khizkhiz/swift,dduan/swift,zisko/swift,slavapestov/swift,uasys/swift,milseman/swift,cbrentharris/swift,adrfer/swift,allevato/swift,brentdax/swift,practicalswift/swift,emilstahl/swift,calebd/swift,johnno1962d/swift,nathawes/swift,lorentey/swift,austinzheng/swift,therealbnut/swift,danielmartin/swift,ken0nek/swift,gottesmm/swift,sschiau/swift,alblue/swift,practicalswift/swift,allevato/swift,modocache/swift,arvedviehweger/swift,practicalswift/swift,ken0nek/swift,russbishop/swift,ken0nek/swift,johnno1962d/swift,shajrawi/swift,tjw/swift,jmgc/swift,return/swift,aschwaighofer/swift,swiftix/swift.old,bitjammer/swift,MukeshKumarS/Swift,rudkx/swift,alblue/swift,therealbnut/swift,arvedviehweger/swift,swiftix/swift.old,dduan/swift,IngmarStein/swift,hughbe/swift,codestergit/swift,brentdax/swift,rudkx/swift,johnno1962d/swift,deyton/swift,hooman/swift,CodaFi/swift,parkera/swift,bitjammer/swift,calebd/swift,roambotics/swift,atrick/swift,karwa/swift,tkremenek/swift,johnno1962d/swift,sdulal/swift,harlanhaskins/swift,khizkhiz/swift,ken0nek/swift,roambotics/swift,calebd/swift,shajrawi/swift,aschwaighofer/swift,lorentey/swift,gottesmm/swift,tinysun212/swift-windows,kusl/swift,Ivacker/swift,glessard/swift,atrick/swift,modocache/swift,jmgc/swift,CodaFi/swift,stephentyrone/swift,xedin/swift,sdulal/swift,therealbnut/swift,KrishMunot/swift,therealbnut/swift,tkremenek/swift,austinzheng/swift,tjw/swift,karwa/swift,OscarSwanros/swift,hughbe/swift,tinysun212/swift-windows,aschwaighofer/swift,hughbe/swift,JaSpa/swift,atrick/swift,benlangmuir/swift,airspeedswift/swift,cbrentharris/swift,djwbrown/swift,dduan/swift,frootloops/swift,huonw/swift,KrishMunot/swift,gribozavr/swift,frootloops/swift,lorentey/swift,parkera/swift,alblue/swift,uasys/swift,tardieu/swift,gmilos/swift,gottesmm/swift,modocache/swift,adrfer/swift,modocache/swift,huonw/swift,milseman/swift,mightydeveloper/swift,ben-ng/swift,sschiau/swift,russbishop/swift,dduan/swift,benlangmuir/swift,return/swift,allevato/swift,hughbe/swift,karwa/swift,slavapestov/swift,return/swift,emilstahl/swift,LeoShimonaka/swift,jckarter/swift,Ivacker/swift,shahmishal/swift,nathawes/swift,shajrawi/swift,JGiola/swift,mightydeveloper/swift,felix91gr/swift,jopamer/swift,therealbnut/swift,CodaFi/swift,manavgabhawala/swift,austinzheng/swift,LeoShimonaka/swift,manavgabhawala/swift,CodaFi/swift,OscarSwanros/swift,xedin/swift,xwu/swift,sdulal/swift,danielmartin/swift,jckarter/swift,amraboelela/swift,Ivacker/swift,therealbnut/swift,return/swift,kentya6/swift,aschwaighofer/swift,huonw/swift,jopamer/swift,glessard/swift,MukeshKumarS/Swift,ahoppen/swift,karwa/swift,amraboelela/swift,xedin/swift,uasys/swift,modocache/swift,gmilos/swift,natecook1000/swift,natecook1000/swift,shajrawi/swift,JaSpa/swift,parkera/swift,practicalswift/swift,bitjammer/swift,ken0nek/swift,adrfer/swift,djwbrown/swift,JGiola/swift,parkera/swift,sschiau/swift,gribozavr/swift,JGiola/swift,natecook1000/swift,apple/swift,tkremenek/swift,nathawes/swift,Jnosh/swift,jmgc/swift,calebd/swift,hughbe/swift,brentdax/swift,emilstahl/swift,gottesmm/swift,lorentey/swift,stephentyrone/swift,deyton/swift,shahmishal/swift,shahmishal/swift,shajrawi/swift,zisko/swift,amraboelela/swift,hooman/swift,gribozavr/swift,deyton/swift,austinzheng/swift,frootloops/swift,bitjammer/swift,huonw/swift,airspeedswift/swift,JaSpa/swift,arvedviehweger/swift,mightydeveloper/swift,swiftix/swift,devincoughlin/swift,karwa/swift,parkera/swift,tardieu/swift,IngmarStein/swift,MukeshKumarS/Swift,shahmishal/swift,jtbandes/swift,rudkx/swift,swiftix/swift.old,kusl/swift,xedin/swift,LeoShimonaka/swift,harlanhaskins/swift,jtbandes/swift,aschwaighofer/swift,devincoughlin/swift,SwiftAndroid/swift,xwu/swift,kentya6/swift,frootloops/swift,therealbnut/swift,swiftix/swift.old,apple/swift,OscarSwanros/swift,JaSpa/swift,devincoughlin/swift,allevato/swift,gregomni/swift,swiftix/swift,shajrawi/swift,devincoughlin/swift,kperryua/swift,swiftix/swift.old,OscarSwanros/swift,brentdax/swift,deyton/swift,cbrentharris/swift,ben-ng/swift,IngmarStein/swift,practicalswift/swift,kusl/swift,JGiola/swift,jtbandes/swift,jopamer/swift,tjw/swift,practicalswift/swift,kstaring/swift,rudkx/swift,tinysun212/swift-windows,parkera/swift,sschiau/swift,ahoppen/swift,harlanhaskins/swift,apple/swift,kstaring/swift,codestergit/swift,swiftix/swift,hooman/swift,airspeedswift/swift,russbishop/swift,LeoShimonaka/swift,nathawes/swift,LeoShimonaka/swift,codestergit/swift,tjw/swift,jckarter/swift,arvedviehweger/swift,natecook1000/swift,slavapestov/swift,ben-ng/swift,ahoppen/swift,kentya6/swift,ahoppen/swift,felix91gr/swift,amraboelela/swift,gmilos/swift,slavapestov/swift,ahoppen/swift,cbrentharris/swift,ken0nek/swift,brentdax/swift,tinysun212/swift-windows,kperryua/swift,stephentyrone/swift,brentdax/swift,airspeedswift/swift,slavapestov/swift,apple/swift,cbrentharris/swift,KrishMunot/swift,felix91gr/swift,sschiau/swift,djwbrown/swift,kentya6/swift,khizkhiz/swift,kstaring/swift,sschiau/swift,sdulal/swift,danielmartin/swift,CodaFi/swift,roambotics/swift,kusl/swift,russbishop/swift,hooman/swift,ben-ng/swift,dduan/swift,sschiau/swift,ahoppen/swift,russbishop/swift,kentya6/swift,zisko/swift,MukeshKumarS/Swift,jtbandes/swift,benlangmuir/swift,calebd/swift,austinzheng/swift,karwa/swift,tardieu/swift,bitjammer/swift,glessard/swift,shahmishal/swift,MukeshKumarS/Swift,kperryua/swift,lorentey/swift,sdulal/swift,nathawes/swift,adrfer/swift,gmilos/swift,Jnosh/swift,swiftix/swift,ben-ng/swift,gregomni/swift,uasys/swift,harlanhaskins/swift,khizkhiz/swift,manavgabhawala/swift,LeoShimonaka/swift,danielmartin/swift,KrishMunot/swift,milseman/swift,modocache/swift,milseman/swift,jopamer/swift,sdulal/swift,jmgc/swift,zisko/swift,xwu/swift,MukeshKumarS/Swift,gregomni/swift,natecook1000/swift,xwu/swift,kperryua/swift,dreamsxin/swift,emilstahl/swift,kentya6/swift,tjw/swift,parkera/swift,SwiftAndroid/swift,codestergit/swift,gottesmm/swift,tardieu/swift,Jnosh/swift,khizkhiz/swift,adrfer/swift,kusl/swift,kperryua/swift,shahmishal/swift,jmgc/swift,xwu/swift,jmgc/swift,atrick/swift,sschiau/swift,zisko/swift,hughbe/swift,xedin/swift,frootloops/swift,felix91gr/swift,tkremenek/swift,frootloops/swift,deyton/swift,gmilos/swift,return/swift,uasys/swift,Ivacker/swift,IngmarStein/swift,calebd/swift,benlangmuir/swift,alblue/swift,felix91gr/swift,deyton/swift,huonw/swift,JaSpa/swift,felix91gr/swift,huonw/swift,airspeedswift/swift,rudkx/swift,gottesmm/swift,CodaFi/swift,stephentyrone/swift,codestergit/swift,jtbandes/swift,glessard/swift,harlanhaskins/swift,russbishop/swift,gribozavr/swift,return/swift,shajrawi/swift,jckarter/swift,SwiftAndroid/swift,allevato/swift,dduan/swift,mightydeveloper/swift,atrick/swift,huonw/swift,devincoughlin/swift,slavapestov/swift