Fix / simplify semantic layout algorithm
Replace margins with paddings in semantic layout examples
Optimize semantic layout algorithm
Optimize performance of semantic layout algorithm

When layout meets specified criteria, positioning loop is being
finished.
Add new example in semantic layout experiment

This example is a good test, as it was causing problems. Also,
rearrange order of components definitions. This should be done
automatically by the algorithm, but for now, it's author
responsibility to provide correct order.

E.g.:
when component A uses dimension of component B and component B
uses dimensions of component C, expected order of definitions is:
C
B
A