Typedtree: add type information to primitive coercions

This will enable type-directed optimizations during translation of
module coercions.

WARNING: this breaks Typedtree representation, magic number will have to
be adjusted.
Translcore.transl_primitive: enable type-directed optimizations
Add translprim testsuite