Interfaces and classes for data transfer between the kernel and extensions.

The classes and interfaces of this package appear as parameter and result types of the interfaces in the kernel.extension package. Parameter objects resemble additional data provided to the extension, while result objects are required from the extension. Some of the result objects provide additional methods, which are used by the kernel at a later time after requesting it from the extension (e.g. once the ITopLevelElement is known to the kernel, the runAsCommand method will be called whenever some change to the model must be applied).