Associate pack type with initial component type in donation #234

see #234 #236 
The dueToDonate property value gets updated if the initial value is null or the collected donation  + periodBetweenDonations is after the dueToDonate date