Let authors customize width and height of the thermometer

[#44384929]
Let authors customize width and height of buttons

[#44384929]
Refactor / change the way how slider adjusts its dimensions

[#44806377] [#44384929]
Change the way how spacing between components is applied and managed

[#44806377]

Previously all components defined their own margins, paddings etc.
That was creating a lot of problems and inconsistent look & feel.
New policy is:
- each component should define margin and padding equal to 0 (!),
- when component is alone in a container, no margin or padding
  is applied (e.g. to make fit-to-parent behavior working correctly),
- when there are multiple components in one container, spacing is
  applied by the semantic layout.
Update Complex Layout interactive
Add "component" class to bar graph when used as an interactive component

[#44806377]
Move common component styles to .component class

[#44806377]

Also ensure that each top-level component container has this class.
Add validation checking whether interactive component has class 'component'

[#44806377]

It's required now to ensure that each component follow some common
patterns when it comes to styling. It will help keep the layout
working as expected.