Only a handful of types had sensible tensorVal implementations. This is now evident in type signatures at the expense of them being more verbose.