Add email verification

This PR adds email verification to Hex.pm.

It also adds an API endpoint called `/user/:name/verify/:code`.

It requires a couple of client side changes in hexpm/hex to become fully functional:

  - Add `mix hex.user confirm <username> <code>` that sends a request to `/api/user/:name/verify/:code`
  - Don't generate keys on signup, and instead generate them after account verification

I haven't added expiry of verification codes yet, but it is something we can look into.

SES is available to send emails over a SMTP transport.

Thoughts?

:dancer:  
I agree with making it a unique column. What do you suggest as an alternative data type for `confirmation_key`?