Move handling of 'final' and @NSManaged properties into validateDecl.
Move handling of 'final' and @NSManaged properties into validateDecl.

This is needed because validation should be enough to invoke a property
correctly. We've been getting away with this because we've been doing extra
work type-checking types from other files (see next commit).

Swift SVN r22374

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