Inlineable classes

This WiP PR will host the inlineable classes optimization. Follow up in the comments.
In theory, yes, but in practice strict subtypes never happen anyway: either both sides generate instances of a same class, which is therefore replaced by the same record type, or you cannot merge them.