CORE-395 Fix how object's due dates are computed

obj.end_date is the date the final task will complete. That is why we need to check each of the tasks to see if the object is overdue.