Accessing Product Data
A product listing on a FreshPoint webpage is represented by the Product
class. This class is used to store all the data that is scraped from the webpage
as well as additional properties deduced from that data. It also provides
methods to compare two snapshots of a product to determine if the product has
changed between the updates and to serialize such snapshots.