[func.wrap.func.targ] Use 'class' not 'typename'

The rest of the library always uses `class` in template parameter lists,
so change the only occurrence of `typename` to be consistent.
Also fix `tcode{}` markup to include entire expression.