Factor Pointer{Reader,Builder} out from {Struct,List}{Reader,Builder}.  Will make it easier to deal with Object fields.
Refactor PointerHelpers to operate on PointerReader/PointerBuilder.
Revamp generated interface to Object fields.  Now there is an ObjectPointer::{Reader,Builder}.  This will simplify the dynamic API (next change) and also makes it easier to delegate decisions about the object type to a function that doesn't know about the context where the object lives (i.e. by passing an ObjectPointer::Builder).
Remove DynamicObject.  DynamicValue can now contain an ObjectPointer to represent object fields.
Get rid of no-longer-needed object-specific methods of DynamicStruct.  Use get().as<ObjectPointer>() instead.
Remove obsolete ObjectReader/ObjectBuilder classes.