Add one-sided contract for ClassTop types

Closes PR 14486
Improve TR error messages for class instantiation