code: function (prop, callback) {
                  // Note: Property does not have to exist yet
  
                  //self.uiDebug('log', `uibuilderfe:uibuilder:onchange: pushing new callback (event listener) for property: ${prop}`)
  
                  // Create a new array or add to the array of callback functions for the property in the events object
                  if (self.events[prop]) {
                      self.events[prop].push(callback)
                  } else {
                      self.events[prop] = [callback]
                  }
              }
docs: Register on-change event listeners
  Make it possible to register a function that will be run when the property changes.
  Note that you can create listeners for non-existant properties becuase
  Example: uibuilder.onChange('msg', function(newValue){ console.log('uibuilder.msg changed! It is now: ', newValue) })
  
  @param {string} prop The property of uibuilder that we want to monitor
  @param {function(*)} callback The function that will run when the property changes, parameter is the new value of the property after change