[eluser]TheFuzzy0ne[/eluser]
I've been thinking about just loading the entire tree into an array, and having a library to work out things such as next sibling, previous sibling and so on. How big is your tree? Obviously, if it's massive, then loading the entire tree is not a good idea, but I'd imagine that with a small forum structure it might work well. Just my 2 pence. I haven't tested it yet, but it was the best idea I could come up with.
Another method might be to store the parent ID in the table, so you can then just select the row with the same parent value and the lowest/highest lft value.