Changed Receipt to use ArrayList instead of array
Changed to use map: added FakeProductMap which uses the array to populate a map and does look-up by prodId w/o looping; added ProductFakeMapRetrieval strategy to access new storage for product info, changed DatabaseStrategy in Product to use new strategy accessing map storage
Changed Customer to use map: added CustomertMap which uses the array to populate a map and does look-up by custId w/o looping; added CustomerMapRetrieval strategy to access new storage for customer info, changed DatabaseStrategy in Customer to use new strategy accessing map storage.
Also renamed to ProductMap & ProductMapRetrieval, removing 'Fake'