Improve API, javadoc and change composites / components direction of the
relation