Refactor to separate collection of promotable boxes from promoting them.
Refactor to separate collection of promotable boxes from promoting them.

Swift SVN r15619

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