Fix for a very nasty bug; the previous date validation was very limited, and allowed two huge loopholes:

First of all, it only disallowed dates beyond the year 9999, whereas exceedingly *early* dates posed the exact same problem. To fix this, I added in a check to make sure the deadline wasn't too early either.

Secondly, it only disallowed invalid dates on creation: If you made a prediction with a valid date, you were allowed to afterwards edit the date to whatever you wanted to, without triggering the validation.

Either of these would have been enough for a date which PredictionBook is unable to store to be entered as the deadline for a prediction, with disastrous results.
Revert "Merge branch 'foxbenjaminfox-scoring'"

This reverts commit 96c85cfdef59e371870a5fc9c790ff45fd5f9d9e, reversing
changes made to 92ca9cdc7563b15b90f447ecf3dd866ed3a9c8ce.
Raise exception is user login is blank.

This fix can avoid the following error:

"
A NoMethodError occurred in deadline_notifications#index:

  undefined method `deadline_notifications' for nil:NilClass
  app/controllers/deadline_notifications_controller.rb:6:in `index'
"

[#73102610]
Merge branch 'date-fix' of github.com:foxbenjaminfox/predictionbook into foxbenjaminfox-date-fix
Merge branch 'foxbenjaminfox-date-fix'
Merge branch 'bug_blank_user_id_handling_in_deadline_notification_controller_index_#73102610'