Class definition for a generic component

This class implements a generic component. All other classes should inherit from it. It implements basic error management and component identification interface.