added some more comments and made Palette in ProductFragment asynchronous.