Add match*? to unstable/match
Fix union merging

Trying to merge (and thus resolve) applications of struct
types would cause infinite looping on type instantiation
if the struct type used both a union and recursion.

Closes PR 13821
Improve TR test case
Fix type of gensym.
Fix dist-specs.
Remove leftover define/match docs
Superficial pattern for wildcard that doesn't bind.