Fix major inefficiency of the incremental optimizer.

It was basically invaliding all methods calling *any*
constructor in the world *every* time (even if nothing changed).
It now instead invalidate constructor callers only when the
inlineable status of the class changes (which includes having
a different set of fields if it is inlineable).
Merge pull request #991 from sjrd/fix-inefficiency-of-inc-optimizer

Fix major inefficiency of the incremental optimizer.