Generate a session in the database for the login.

Tests for it actually pass now.  Yay!
Implement ephemeral key exchange.