shopping list initial impl
merged master