Convenience method that can build the widget this data object represents.
This is the equilivant of calling: builder.build and padding this in as
the data parameter.
Recreates the data object based on the updated values and function
responces from the registry. This should only be called within the
framework itself, external code should not need to call this.
Decodes a JSON object into a dynamic widget. The structure is the same
for all dynamic widgets with the exception of the args value. The
args depends on the specific type.