* Add an animation for state changes.
* Set the start state by triggering the event on the selection at page load.
Firefox at least remembers the selected button on page load. This avoids
a situation where the user says they want a shirt, reload, and now the
size selection is invisible because we used to hide that unconditionally.
This commit keeps the presentation basically the same, it just moves
presentation rules out of HTML and into CSS. It's not pixel-perfect but
pretty close.