Add first half of enhancing the shopping cart