Added date range and date validation for signup

1. Added date range for month and year.
2. Added Python date validation for date.

Why not index the `MONTH_CHOICES` tuple to prevent this hoopla?