Initial working version
Add shopping list persistence to localStorage and restore