Webservice: PUT URLs are REST-conform (#482).

BREAKING CHANGE

The topic/association update requests are now REST-conform.

REST API:
{{{
    PUT /core/topic/{id}
    PUT /core/association/{id}
}}}
The respective ID is now part of the request URI.

If your plugin or external application constructs the update URL itself it must be adapted.
However if your plugin uses these Webclient's API methods no update is required:
{{{
    dm4c.do_update_topic()
    dm4c.do_update_association()
    dm4c.restc.update_topic()
    dm4c.restc.update_association()
}}}

Note 1: the Webclient API and the Core Service API have not changed. Only the REST API has.

Note 2: in the update requests shown above the respective ID now appears redundantly at 2 spots: 1) in the request URI, and 2) like before in the message body (the model representation). Crucial is the ID in the request URI.

About the ID in the message body: it is optional. Weather it is -1 or not specified at all makes no difference. However if it is specified (that is unequal to -1) it must match the ID in the request URI. If the ID is specified but does not match the ID appearing in the request URI an exception is thrown.

Close ticket 482.