Make the script more readable, mostly by:
- using the Product classes,
- removing the use of functions when unnecessary,
- a little bit of renaming and documentation.
Also add a link to web.archive.org to fetch new oldest versions.
Create common functions parse_date, parse_month_year_date and parse_datetime.
Those functions support trying multiple formats, and come with default formats lists that support most of the date format encountered so far.
Notable change: year-month dates are now set to the end of month (impacted couchbase-server and ibm-aix).