title: Concise way to destroy user's session in Rails
body: <p>Ok, there appears to be few approaches to 'destroying' a user's session and there may be subtleties between them and how the app handles user sessions. </p>
  
  <p>First, why is it most examples don't use <code>session.delete(:current_user_id)</code> to delete the <code>:current_user_id</code> value (and its hash key!)? A typical example looks like the below (I added deleting <code>:return_to</code> since if signing out, why would there by a need to track a return_to value). </p>
  
  <pre><code>  def sign_out
      self.current_user = nil
      session[:current_user_id] = nil
      session.delete(:return_to)
    end
  </code></pre>
  
  <p>If the app needs to delete all session variables and values, isn't it safer to simply use <code>session = nil</code> or <code>session.destroy</code>? This will destroy the hash entirely. It would make sense to keep <code>current_user_id</code> in your session hash if your app supports... say tracking of anonymous users ?!?!</p>
  
  <p>Thoughts? </p>