An ordered tree data structure written in objective-c