add type name to the tydesc

Closes #8926
repr: add very basic support for functions

Closes #8917
auto merge of #8947 : thestinger/rust/name, r=huonw

Storing the type name in the `tydesc` aims to avoid the need to pass a type name in almost every single visitor method.

It would likely be much saner for `repr` to simply be passed the `TyDesc` corresponding to the function or just the type name, but this is good enough for now.