Fix some places in typerep where unsafe code causes runtime "invalid" errors with flambda2, meaning that the optimiser thought such code was unreachable. This was missed before as it requires a low optimisation level which we don't usually use for flambda2 builds.
typerep_lib to use the type lazy_t rather than Lazy.t. The ocaml_plugin library's Ocaml_compiler compiles modules in an environment where the compiler cannot determine that Lazy.t and lazy_t are the same - thus with the current version of typerep_lib plugins effectively cannot use @@deriving typerep.Renamed Typerep libraries for more consistency with the rest of the framework.
Typerep_kernel --> Typerep_lib
Typerep_core --> Typerep_extended
Typereplib --> Typerep_experimental