Added shopping cart functionality (potentially buggy)