Open-hierarchy custom RTTI for C++17 and up with support for multiple inheritance and dynamic casting.