adding extendability to palette factory -> making seperate factory classes for certain things