#18 code clean up, and a minor bug fix so the sorting of the shopping list works ok at first sort