docs: def get(self, prop):
          """ get the value off the passed in dot notation
  
          args:
              prop: a string of the property to retreive
                  "a.b.c" ~ dictionary['a']['b']['c']
          """
          prop_parts = prop.split(".")
          val = None
          for part in prop_parts:
              if val is None:
                  val = self.obj.get(part)
              else:
                  val = val.get(part)
          return val