Added generic list component and cleaned up a little.