Opaque data structure MethodInvocation introduced to make classes more
resistent against changes in the recursion detection.