Allow user to add router, conversation and channel components

`scope.newComponent` is only the data for the component we are busy adding. `scope.data` contains all the conversations, channels and routers, so basically everything d3 needs to repaint the canvas.