added rescheduleMilestone usecase, full clean implementation