FreeMind is a free mind-mapping software written in Java that I use to work with.
The best thing is that is implemented to render HTML, so when you copy and paste HTML on a map, it will use the tags to organize the different levels of data.
http://freemind.sourceforge.net/wiki/index.php/Main_Page