A reimagining of coevolveSym.

My approach was: lookup up the TypeRef's symbol's name in the
new prefix (and look for any member, not only decls and not
only certain subclasses of Type.) If that symbol is different
from the TypeRef's symbol, and if the new symbol has within its
override chain a symbol which is overridden by the old symbol,
then return the newly looked up symbol.

Other notes:

neg/t4137 should issue more errors
neg/lubs I don't know if it makes sense
neg/{ t608, t0764, t8104 } all become pos tests, and to my eye
  that is correct in all cases.