I think the best way to achieve that would be grouping plus ability to expand/collapse groups.