Writing good components

At the core of using React is writing components. React got really popular because of it's composition model.

The contract with the framework is that we'd write good components and React will take care of the rest.

A good component is: