Implement additional tests on model

Increase test coverage on Card, Assignment, and CardSubmissionLog
models.
Implement additional model validations

Increase test coverage and validations on Enrollment, Challenge, and
ChallengeProgression models. Add validates_timeliness gem for datetime
validation on Enrollments.