Group and collapse part list

* Categorised parts with collapsible headers, basic UI