When an under-sized struct is found while traversing a builder, upgrade it to the expected size.  This is needed to allow easy copying from readers to builders.  Next, this will need to be implemented for lists as well.
Mass rename 'reference' -> 'pointer'.  Been meaning to do this for a while -- all the documentation talks about 'pointers', not 'references'.
When getting a list from a builder, if the list elements are too small, upgrade it.
Implement ability to set() struct and list fields by deep-copying from a corresponding Reader.  This copy requires no schema knowledge.