Set symbol on union of spreads
Set symbol on union of spreads

Previously, it was only set on the top-level type, and only if that
top-level type was an object type. Now it uses `forEachType` to set the
symbol on every object type in the union as well, if `getSpreadType`
returns a union.

Microsoft/TypeScript,kitsonk/TypeScript,TukekeSoft/TypeScript,Eyas/TypeScript,weswigham/TypeScript,basarat/TypeScript,SaschaNaz/TypeScript,weswigham/TypeScript,RyanCavanaugh/TypeScript,RyanCavanaugh/TypeScript,minestarks/TypeScript,RyanCavanaugh/TypeScript,TukekeSoft/TypeScript,alexeagle/TypeScript,donaldpipowitch/TypeScript,basarat/TypeScript,minestarks/TypeScript,donaldpipowitch/TypeScript,Microsoft/TypeScript,alexeagle/TypeScript,kitsonk/TypeScript,basarat/TypeScript,weswigham/TypeScript,nojvek/TypeScript,kpreisser/TypeScript,donaldpipowitch/TypeScript,basarat/TypeScript,Eyas/TypeScript,Microsoft/TypeScript,nojvek/TypeScript,TukekeSoft/TypeScript,Eyas/TypeScript,microsoft/TypeScript,nojvek/TypeScript,microsoft/TypeScript,kpreisser/TypeScript,minestarks/TypeScript,nojvek/TypeScript,SaschaNaz/TypeScript,SaschaNaz/TypeScript,SaschaNaz/TypeScript,Eyas/TypeScript,microsoft/TypeScript,kitsonk/TypeScript,donaldpipowitch/TypeScript,alexeagle/TypeScript,kpreisser/TypeScript