Added ProductClassShape to allow mapping to classes extending Product

review by @szeiger