Restructure classes; add components Structure, Html, Grid

To allow for components outside the main grid new elements were introduced.
The Grid component encapsulates all components in a grid now.
The Html component allows to insert raw HTML in the structure XML.

Some components are now subclasses of other components to avoid code duplication:

Component
  Structure
    Container
      Grid
      Row
      Cell

Change-Id: I14df6abbd24e5cd86949abeb9d735912c72c5eaa