Add validation on User#email. Switch activation generation to email.

Email makes the most sense to validate on, since we're immediately
sending an activation email, and while twitter handle is desirable, I
doubt it should be required.

If it wasn't provided, kablooey.
Move find_or_activate_by_email into Availabilities.
Add an email before_filter for availabilities.
Make mentor and mentee factories use User.
Refactor availabilities#create, and tests.
Add test for availabilities#destroy.
Make availability factory valid.
Remove empty mailer spec.
Refactor and remove invalid specs.
Add user specs for activation codes.