text: Title: clean way to add non-persistable fields?
  Body: I want to initialize my model with extra attributes that are inferred from persisted fields
  
  For example, let's say I have birthdate and I want to calculate age. There is no reason to store both fields, so I can do the following:
  
  ```
  import datetime
  from typing import Optional
  
  from pydantic import EmailStr
  
  from redis_om import HashModel
  
  
  class Customer(HashModel):
      first_name: str
      last_name: str
      email: EmailStr
      join_date: datetime.date
      birth_date: datetime.date
      bio: Optional[str]
  
  def __init__(self, **kwargs):
      super().__init__(**kwargs)
      self.age = helper_func.get_age_from_birthdate(self.birthdate)
  ```
  
  The problem is with the above approach is "age" gets persisted.
  
  I can do the following:
  
  ```
  class Customer(HashModel):
      first_name: str
      last_name: str
      email: EmailStr
      join_date: datetime.date
      birth_date: datetime.date
      bio: Optional[str]
  
  def populate_extra_fields(self):
      self.age = helper_func.get_age_from_birthdate(self.birthdate)
  
  c = Customer.get(id)
  c.populate_extra_fields()
  ```
  
  But then on subsequent .save() the age field gets persisted. I will have to re-fetch to update the model without age getting persisted, e.g:
  
  ```
  # BAD: (age gets persisted)
  c = Customer.get(id)
  c.populate_extra_fields()
  if c.age > 35:
      c.first_name = "melder"
      c.save()
  
  # GOOD: (age does not get persisted)
  c = Customer.get(id)
  c.populate_extra_fields()
  if c.age > 35:
      c = Customer.get(id)
      c.first_name = "melder"
      c.save()
  ```
  
  Is this simply outside the scope of the library or how it should be used? Would it better to write a wrapper to handle these extra fields?