Fix method names in errors.
Protect against virtual base; use transaction for decl iteration.

Virtual bases are not part of the clang bases and assert when calculating the offset.
Iterating over decls needs a transaction; it might deserialize.
Do not create objects for TClass::BuildRealData()!

ShowMembers() does not need an object - unless it's a virtual base.
For virtual bases and if an object is available: use TClingClassInfo to determine the offset.
Pass object *iff* we have one. No complaints about string.
Before deleting, make the parent forget.
Inspecting std::string is not needed.
Skip BuildRealData() for string; calling it for STL (but containers and pair) is bad.
BuildRealData() without creating temporary objects.