Add verification to phone and email alerts
Currently, there is no verification of phone or email contact information when signing up for an alert. This could allow accidental information leakage. We should do the following:
- Add a "verified" boolean column to the Contact model that is False by default
- Users can't test their contacts until they are verified (grey out test link, add a check in the contact test view)
- When a user creates a contact, we should generate a random string (length TBD), attach it to the instance, and send it to their email or phone.
- Add a contact verification page (linked from options page) where they can enter the string
- Alerts should check that the contacts are verified
- Unit tests for all of this!