Create a GuiScrollControl for scrolling, and within it create a GuiTextListControl, and name it something, for example, ListThing.
Add things to the list using ListThing.Addrow(id, text, index);
Clear the list by using ListThing.Clear();
Clear the selection using ListThing.clearSelection();
Find out what is currently selected by using either ListThing.getValue() to get the selection's text, or ListThing.getSelectedId() to get the selection's ID.
Use ListThing.removeRow(index) or ListThing.removeRow(id) to remove a row with the specified index or id.
As for multi-column, I'm not sure / too lazy to figure out
