Yeah, the "railroading," as you call it, is sort of required to a point. In the context of basic HTML (and paper, for that matter ;-)), you can't really tell it "if node 3 was X, offer options Y and Z on node 150." Instead, if you want a choice from "node 3" to really matter in a big way by...