Password reset

Add ability for users to reset their passwords via email. Also allows users to edit their email and passwords within the app. Resolves #13 .
Not necessarily "frowned upon" (at least not by me), but Ruby returns the return value of the last line in a method.  Usually, `return` is reserved for exiting a method prematurely.  This could be written like:

```ruby
def update_user
  return false if expired? || invalid_password?

  user.destroy_password_reset_token
  user.update_attributes(password: password, password_confirmation: password_confirmation)
end

def expired?
  if user.password_reset_sent_at < 2.hours.ago
    errors.add(:base, 'Password reset has expired.')
  end
end

def invalid_password?
  unless password == password_confirmation || password.length >= 6
    errors.add(:base, 'Password fields must match and be at least six characters.')
  end
end
```

It also would seem to me that `user.update_attributes` should handle the password validation.  Does that feel redundant to have in this class?