Display, Display-Model and Display-Role details

Display is a compound property that defines both the display-model and
display-role properties. It is there for backward compatibility.

Display-Model:
  - Describes the algorithm used by an element to lay out its children.

Display-Role:
  - Describes how the element behaves inside the parent's algorithm
    (display-role is a layout-constraint for the parent.)

When adding elements to a parent element, we always have to match the parents
display-model with the given display-role.

Text is treated like an anonymous inline-box.

Some Display-Roles are handled independently of the parent's display-model.

General Display-Roles:
----------------------------------
  - NONE
        Ignored. This is pass-through content.
  - TABLE-*
        If added to the correct table context, they are added as is, else they
        generate the missing context-information as anonymous table-boxes.

Parent-DisplayModel: Block-Inside
----------------------------------

  - RUN-IN
        Added to the pending-stack. If the next silbling element is an Block
        element, then add it as first inline-level element to that block.

        If the next element is an inline element, render the RUN-IN as block
        on its own. (This is not implemented yet.)

   - COMPACT
        If the next element is a block-level element, check whether the compact
        element would fit into the left margins (?) of that block and if so,
        then render it there. Obviously, this cannot be decided unless the
        compact element has reached the renderer. (This is not implemented yet.)

   - LIST-ITEM, BLOCK, (RUN-IN, COMPACT)
        The element is added directly to the parent. If a line-box is open, the
        linebox is suspended before adding the element.

   - INLINE
        The element generates an principal linebox (called the 'paragraph').

Parent-DisplayModel: Inline-Inside
----------------------------------
   - INLINE
        The element is added directly.

   - LIST-ITEM, BLOCK, RUN-IN, COMPACT
        The current linebox is suspended and the boxes are added as if they
        were direct childs of the current block-context.

Parent-DisplayModel: Table
----------------------------------
   - TABLE-*
        See above.

