You already checking for nil in List() method. The same for Remove() too. There is a lot of code like this. Does it need a seperate check everytime?