Begin of "Nested content panel rendering" (#104).

Change Field Renderer framework:
A field renderer constructor got only one parameter: "field_model" (a FieldModel object).
The former "topic" parameter is accessible as field_model.toplevel_topic
The former "rel_topics" parameter is dropped.

Add "interface" FieldRenderer.
It will provide default method implementations and serves for documentation purposes.

Add to webclient.css: box styles for each nesting levels.

No visible results yet.

See ticket 104
Webclient: nested content panel rendering (#104).

The content panel visualizes the composite structure as nested boxes, filled with a distinct color for each nesting-level.

Change Field Renderer contract:

- The render_field() method gets a "parent_element" and is responsible for rendering into that. At calling time the parent_element is already part of the DOM.
Nothing is to be returned.

- The same applies to the render_form_element() method.

- The post_render_form_element() method is dropped.

See ticket 104
Webclient: show "Add another ..." buttons (#76).

Not yet funcional.

See ticket 76
Webclient: "Add ..." button extends form (#76).

Server-side processing is pending.

See ticket 76
Core: extend storage layer.

Add method to retrieve an association by type, topic IDs, *and* role types:

    AssociationModel getAssociation(String assocTypeUri, long topic1Id, long topic2Id,
                                                         String roleTypeUri1, String roleTypeUri2)

Requires Neo4j Mehtagraph 0.9-SNAPSHOT
Core: Editing multiple-value topics works (#76).

Editing e.g. all the Person's multiple-value fieds (Phone, Email, Website, Address) works for the first time.

In general
- many simple topics works
- many compositioned topics works
- many aggregated topics is pending (not used in standard distribution topic types)

See ticket 76
Type Editor panel: change association type (#77).

Changing the association type in the type editor panel works.
Still pending:
- Change cardinality
- Visually update possible association definitions on the canvas (e.g. color)

Furthermore in Core:

1) Introduce service implementation class ObjectFactory. Its responsibility is to load domain objects from DB.
This makes for a more clean design and reduces complications (no model-less domain objects are constructed).
The domain object's own fetch() methods are about to be dropped.
For the moment only one domain object -- AssociationDefinition -- is transformed.

2) Change AssociationDefinition interface: Add method
    void update(AssociationDefinitionModel model, ClientState clientState, Directives directives)

3) Change Association interface: New method
    getRole(RoleModel model)
replaces
    getRole(long objectId)

4) Change Role interface: Add method
    RoleModel getModel()

See ticket 77
Core fix: change role types.

Interactive change of the association's role types works again.
Was broken in previous commit (today).
Type Editor panel: change cardinality works (#77).

Changing the cardinality in the type editor panel works.
Click a topic type -> press Edit -> change Cardinality -> press Save.

Still pending:
- Visually update possible association definitions on the canvas (e.g. color)

See ticket 77
Core fix: add several topics at once works (#76).

... by an "Add" button in the detail panel.

See ticket 76
Core: *many* simple aggregations works (#76).

See ticket 76