Avoid lazy val, fix cache invaliation of isOverridingSymbol
Avoid lazy val, fix cache invaliation of isOverridingSymbol

`Symbol.isOverridingSymbol` cached its result, and failed to
recompute it on subsequent runs. Recompuation is neccessary as
in a later run an ancestor might have changed, which could change
the result of this method.

I've encoded the boolean + run id in an single integer field.
This ends up being neutral for the data size of most Symbol
subclasses (the old boolean bitmap, boolean value, and padding
equates to the new int.)

martijnhoekstra/scala,martijnhoekstra/scala,lrytz/scala,scala/scala,scala/scala,scala/scala,scala/scala,lrytz/scala,lrytz/scala,martijnhoekstra/scala,martijnhoekstra/scala,lrytz/scala,martijnhoekstra/scala,lrytz/scala,scala/scala,lrytz/scala,scala/scala,martijnhoekstra/scala