React prototype

This is a branch that creates a view with React components. The App component contains an AST editor and a Graph component. A Graph component receives a dummy model (a simple wrapper around an AST) and renders a set of Node components. A Node component is a rectangle of a constant size and a given position. Dragging a Node element changes the node's position in the model. That change causes the view to re-render from the App component down.
If we want to publish our package on bower down the road, we'll need to remove this line from the gitignore file. Bower is pretty dumb in that (to my knowledge) it does not have any built in mechanisms for interacting with a build script after a package is installed.

What this means is that we're going to have to commit our distributables when we want to publish them. This is kind of dumb and annoying but it's really the only way to make our package publishable on bower.