Why is this setInterval needed? I would think an if statement would be fine to handle the null case, and then `updateSvg` would be called in the state.json callback (instead of `self._isRendered =  true;`).

It doesn't matter for the demo branch, but something to try out before merging with master.