Если вы действительно хотите сохранить данные в списке, вы можете использовать NSString: propertyList. Он возьмет список свойств и разберет его в необходимых для вас структурах. Затем вы можете использовать NSPropertyListSerialization, чтобы выписать его обратно.
Честно говоря, то, что вы делаете, проще, если у вас нет множества различных сущностей, которые вы можете отслеживать. Есть много способов просто загрузить и сохранить данные, если это все, что вас интересует. Помимо NSCoder (который на мой вкус представляет собой много стандартного кода), вы можете использовать CoreData и вообще не беспокоиться о процессе сериализации. -CoreData управляет всем этим для вас полуавтоматически.