KaBlam
KaBlam is a non-linear text editor that breaks down text into nodes in a tree. These nodes can be rearranged, edited, and mangled as functional units. I wrote it as an organizational tool for writing, but it's useful for any type of structured document. Also, the software is alpha stage right now. It has bugs, I know that. :)