Handle custom view props at client-side (#505).

The custom view properties added by a viewmodel customizer at server-side are accessible from a topicmap renderer customizer at client-side. In a TopicView object the custom view properties are accessible as
{{{
tv.view_props[...]
}}}

So the circle is now complete. Topics can have individual styles, based on persistent per-topic view properties. At server-side a **Viewmodel Customizer** can add custom properties (e.g. color, shape) to a topic's viewmodel. At client-side a **Topicmap Renderer Customizer** have access to these custom properties when rendering a topic.

As an example see the Box Renderer plugin. The topic boxes have individual colors:
https://github.com/jri/dm4-box-renderer

BREAKING CHANGE

The Topicmap JSON format has slightly changed. A topic's "view" property is now called "view_props".

    topic.view -> topic.view_props

See #505.