Build zoomable and pannable SVG canvas

The `link` function will only be called once by AngularJS. Refactored the `conversation` component to take a `selection` and `data` so it can redraw the conversations.