update implementation to alphabetize list and create section headers