Added abstract base class for Product.
Added abstract base class for Product.

Defining the manager on an abstract base class means subclasses will
inherit it instead of having to explicitly define their own.

jaywink/cartridge-reservable,jaywink/cartridge-reservable,jaywink/cartridge-reservable