JavaScript -- Creating the game components

What do we need?  We need game pieces, a board on which to place them,
and something to abstract the HTML display (a view).

A piece has a shape and an image representing that shape.

The board consists of game pieces and a way to link to the view, and can
be in any of several states that represent what players are allowed to
do or what the game is doing.

The view knows what pieces have been clicked and can perform actions
based on which state the board has.

Finally, we create our new board a view representing it.