Define component interface and properties

The definition of a C component specifies the interfaces that the component implements as well as its other properties.

The component’s transaction property determines how it participates in transactions. The threading property imposes constraints on concurrent execution of the component.