Support dynamic types

Some of the OpenStack projects need to be able to add
data to the input and output types used by the API,
in order to support extensions configured when the
service is deployed. This change adds a reregister()
method to the Registry that can be used to update the
registration of an existing class, and provides a
DynamicBase class with a convenience method for adding
new extension fields.

bp support-dynamic-types

Change-Id: Idf892de2129fddd7ddbb43847ebe0f14464a6e97
Merge "Support dynamic types"