so mucho stuffo
modified to match new faster fetch()
whoops, and the product page
added basket logic
proper 404