Refactored cart and added address module