SI-6187 Make partial functions re-typable

- New(tpe) doesn't survive a resetAttrs / typecheck; use
   a name instead.
 - Abandon the tree attachment that passed the default
   case from `typer` to `patmat`; this tree eluded the
   attribute reset performed in the macro. Instead, add it
   to the match. Apart from making the tree re-typable, it
   also exposes the true code structure to macros, which
   is important if they need to perform other code
   transformations.

TODO I could only get this through typechecking with
a cast in the default case.