Improve error messages for stuck Unroll type family
The previous error messages like "No instance: HasBlueprintDefinition x" mimicked standard GHC instance resolution errors, which was misleading. Users would search for missing instances when the actual problem was that type families cannot be evaluated with abstract type variables. This change: - Replaces "No instance" wording with clearer "Cannot unroll type" message - Lists all possible causes (abstract type, missing instance, missing Generic) - Adds specific guidance about DefinitionsFor with polymorphic constraints - Improves RepIsStuckError with actionable suggestions Closes #6956