working linked list (no test or makefile yet)