Add support for member data pointer type.

Given:

class A {
private:
   int fInt;
};

We need to support storing the return value of
a function like this:

int A::*
f()
{
   return &A::fInt;
}
Support returning values of arbitrary class type.

This restriction prevents us from evaluating function argument
expressions of class type (by value), and prevents us from
returning values with a class type (by value), if that class
has a non-trivial constructor or copy constructor.

For now we will allow the StoredValue to do a bit copy, with
the expectation that in the future StoredValue will hold
values of class type by pointer or reference instead of making
a copy.
Add support for TClingCallFunc function wrappers to transactions.
Remove obsoleted functions.
Remove obsoleted parts of function bodies.
Remove obsoleted data members.
Add new types, data members, and functions.
Spelling.
Preserve member function sorting.
Shorten because of using namespaces.
Small adaptations to new structure.
Make EvaluateExpr() static.
Return immediately on error.
New function implementations.

Give the Exec*() functions their new implementations.
Fixup Init() for new data member.
Fixup InterfaceMethod().
Fixup IsValid().
Remove obsolete code from ResetArg().
Remove obsolete body of SetArg(long).
Remove obsoleted implementations of SetArg(*).
Add new implementations of SetArg(*).
Give SetFunc*() their new implementations.
Add interface for calling with caller allocated return value storage.
Whitespace.
Whitespace.