Change how sporadic schedules match dates
Closes #809 (closed)
If the schedule is sporadic, for each sporadicDate (derived by adding the sporadicConfig's intervals to it's startDate) a time interval is calculated by setting start to the sporadicDate minus ${sporadicDaysBefore} and end to the sporadicDate plus ${sporadicDaysAfter}. If targetDate falls into any of the time intervals the date matches.