[Constraint solver] Use type variable constraints to find literal types.
[Constraint solver] Use type variable constraints to find literal types.

Rather than looking directly at the subexpressions of a function
application to determine whether they are literal expressions, look
instead at the type variables for the argument types: if they have a
literal-conforms-to constraint on them, use the named literal protocol
to determine favored declarations.

This refactoring is intended to broaden the applicability of the
existing "favored declaration" machinery to also consider the literal
constraints of other type variables that are equivalent to the type
variable named by the argument.

tkremenek/swift,atrick/swift,xedin/swift,shahmishal/swift,xwu/swift,ahoppen/swift,karwa/swift,roambotics/swift,gribozavr/swift,hooman/swift,rudkx/swift,tkremenek/swift,xedin/swift,harlanhaskins/swift,nathawes/swift,parkera/swift,roambotics/swift,gribozavr/swift,gregomni/swift,tkremenek/swift,xedin/swift,rudkx/swift,stephentyrone/swift,shahmishal/swift,gribozavr/swift,lorentey/swift,ahoppen/swift,jckarter/swift,xwu/swift,aschwaighofer/swift,shahmishal/swift,JGiola/swift,harlanhaskins/swift,CodaFi/swift,atrick/swift,gribozavr/swift,parkera/swift,rudkx/swift,jckarter/swift,stephentyrone/swift,aschwaighofer/swift,stephentyrone/swift,karwa/swift,lorentey/swift,parkera/swift,airspeedswift/swift,jckarter/swift,jmgc/swift,nathawes/swift,parkera/swift,xedin/swift,shajrawi/swift,xwu/swift,jmgc/swift,xedin/swift,gregomni/swift,sschiau/swift,JGiola/swift,sschiau/swift,xedin/swift,benlangmuir/swift,roambotics/swift,harlanhaskins/swift,parkera/swift,hooman/swift,shahmishal/swift,atrick/swift,shajrawi/swift,gribozavr/swift,shahmishal/swift,shajrawi/swift,aschwaighofer/swift,shajrawi/swift,glessard/swift,CodaFi/swift,glessard/swift,gregomni/swift,ahoppen/swift,lorentey/swift,glessard/swift,gregomni/swift,JGiola/swift,harlanhaskins/swift,stephentyrone/swift,karwa/swift,ahoppen/swift,xedin/swift,ahoppen/swift,harlanhaskins/swift,apple/swift,rudkx/swift,allevato/swift,gribozavr/swift,gregomni/swift,airspeedswift/swift,devincoughlin/swift,apple/swift,lorentey/swift,jmgc/swift,stephentyrone/swift,benlangmuir/swift,apple/swift,aschwaighofer/swift,xwu/swift,xedin/swift,CodaFi/swift,jmgc/swift,harlanhaskins/swift,devincoughlin/swift,atrick/swift,lorentey/swift,hooman/swift,JGiola/swift,shahmishal/swift,nathawes/swift,shajrawi/swift,glessard/swift,benlangmuir/swift,apple/swift,CodaFi/swift,karwa/swift,shahmishal/swift,karwa/swift,jmgc/swift,rudkx/swift,JGiola/swift,airspeedswift/swift,tkremenek/swift,allevato/swift,devincoughlin/swift,allevato/swift,allevato/swift,parkera/swift,shajrawi/swift,hooman/swift,apple/swift,shajrawi/swift,benlangmuir/swift,aschwaighofer/swift,gribozavr/swift,gribozavr/swift,tkremenek/swift,glessard/swift,nathawes/swift,karwa/swift,parkera/swift,jckarter/swift,airspeedswift/swift,xwu/swift,shahmishal/swift,xwu/swift,gregomni/swift,roambotics/swift,CodaFi/swift,jmgc/swift,sschiau/swift,benlangmuir/swift,devincoughlin/swift,hooman/swift,karwa/swift,devincoughlin/swift,ahoppen/swift,benlangmuir/swift,JGiola/swift,airspeedswift/swift,atrick/swift,devincoughlin/swift,aschwaighofer/swift,devincoughlin/swift,jckarter/swift,airspeedswift/swift,lorentey/swift,sschiau/swift,hooman/swift,allevato/swift,devincoughlin/swift,lorentey/swift,roambotics/swift,nathawes/swift,glessard/swift,stephentyrone/swift,xwu/swift,harlanhaskins/swift,hooman/swift,stephentyrone/swift,atrick/swift,roambotics/swift,tkremenek/swift,aschwaighofer/swift,jckarter/swift,CodaFi/swift,shajrawi/swift,airspeedswift/swift,allevato/swift,karwa/swift,parkera/swift,sschiau/swift,rudkx/swift,sschiau/swift,jckarter/swift,jmgc/swift,apple/swift,lorentey/swift,allevato/swift,tkremenek/swift,nathawes/swift,sschiau/swift,nathawes/swift,CodaFi/swift,sschiau/swift