ComponentConstructor has been implemented with tests.
Try to separate definition from the component.
Convinient method 'addParent' has been added to the BaseComponent.
Bug with componen name has been fixed.