We are introduced to React.js and learn a basic principle for combining d3 + React.
React.js is a framework for building declarative, module-based user interfaces. It helps you split your interface code into components, which each have a
render function that describes the resulting DOM structure. One of React's greatest strengths is its diffing algorithm, which ensures minimal DOM updates, which are relatively expensive.
If you're unfamiliar with React, spend some time running through an introduction like this one. Our walkthrough will assume a basic understanding of the core concepts since we want to focus on the d3 and React bits.