Really fix the timing thing

So still, there was a bug where if the next date in the future
was suposed to be a week out (ie, the task only happens once a week),
when the next_run was updated, it would be set to the same date/time
as before becasue strtotime() likes to return info about the past if
the past is on the same day.. Which isn't what we want.

SO my fix was to get a date, and if it's already elapsed, prefix the
date string with "next" and then get the date from strtotime again.
And this seems to have fixed it. Yay! Party down!