It looks like you're storing a lot of information in the session. What if you wrote a helper that loaded the currently logged in user from the database and cached it in the database? ala

`@current_user ||= User.find(session[:user_id])`