Fixes repeating event repeat_ends_on bug by modifying the next_occurrences function to only accept scheduled event instances before that datetime.

Pivotal #:76544670
repeating event schedule is not respecting end time limit (event.repeat_ends_on)
Fixes repeating event repeat_ends_on bug by modifying the next_occurrences function to only accept scheduled event instances before that datetime.
use the `Hash#fetch` method for a cleaner way to define defaults