Added a button for entering, flashing, shaking, and animating the text all at once.
Changed animateForever() to animateFor() and took a duration.
Consistently restored clobbered CSS after an animation. Fixed an indeterministic overlap between the enter and shock animations, which was revealed by this restoring discipline.
Wrote a sample conversation. No code uses it yet, and no art exists for it, but it's a start.