docs: function Observer(obj, keypath, callback, options) {
      this.options = options || {}
      this.options.adapters = this.options.adapters || {}
      this.obj = obj
      this.keypath = keypath
      this.callback = callback
      this.objectPath = []
      this.update = this.update.bind(this)
      this.parse()
  
      if (isObject(this.target = this.realize())) {
        this.set(true, this.key, this.target, this.callback)
      }
    }