Second draft of the appendList code

Appears to be working correctly, needs more testing