LLVM-style RTTI (1/2)
This is the first half of of !4760 (merged). It adds the new RTTI functions, replaces most of the calls to the old ones, but doesn't remove them yet.
The only reason for splitting it up this way is to avoid conflicting with other people's branches. So, if you have such a branch, let me know and I can easily remove the conflicting changes from this MR and postpone them to the next one.