Ensuring milestone has a valid associated time period before being graphed.
Added hasValidTimePeriod() and various other tests as support.
Ensuring milestone group has a valid associated time period before being graphed.
Milestone group due date now changes when milestones due dates change.
Moved updateGroupDue() from EditMilestoneForm to MilestoneGroup.
Added hasValidTimePeriod() and various other tests as support.
Signing contributor agreement.