Delegation system in StandardComponent.

Reworked all other classes to work with IComponent.
But I don't think I reworked all classes to work with IComponent.
Most noticeably change in this commit: StandardComponent trait
delegates simply to the Component class methods.