feat(interaction-events): fire canvas.click event
feat(canvas): add update mechanism

This commit adds the ability to trigger redraw of an element via events.

Whenever <(connection|shape).changed> is triggered, the respective shape
or connection is redrawn.

In addition we ship the following changes

* graphicsFactory attaches the shape id to an svg element via <g data-
element-id="the-element-id" />
* add connections is done via command stack (required for update)
* clean up elementRegistry API
* clean up graphicsFactory API

BREAKING CHANGE:

Due to changes in the elementRegistry, the following API methods have
been renamed:

elementRegistry#getShapeById -> #getById
elementRegistry#getGraphicsByShape -> #getGraphicsByElement
elementRegistry#getGraphicsByGraphics -> #getByGraphics

Related to #7