Check out Twine, an open-source tool for telling interactive, nonlinear stories.