Any decent text editor aimed at programming can do this, if you give your file the right extension. Don't program? Pick any extension your editor supports (ie, .c, .java, etc). If you do program, pick an extension for some language you don't work in :)
I do Java and PHP, so I named my test list test.list.c so the syntax highlighting and code folding features kick in. Each category that needs a sub is coded like a function, with opening and closing brackets. The brackets can be expanded and collapsed individually or (depending on editor) all at once.
All that said, my personal favorite is Geany. Light, does the code folding you want, both Free and free, and cross platform (Linux, Mac, and Windows).
Here's a snippet of a screen shot of a demo I just did - Category 2c has sub categories, so it is collapsed (see + sign on margin), Category 2 has the sub categories but it is expanded. Note - nothing I'm aware of will renumber/reorg the lists...
