Add initial implementation of AnyStruct and AnyList

This represents what I've done to this point, brought up to master.  I'd like to only fix design flaws and critical missing features as part of this PR.  Non-critical items should be taken care of in another PR, to prevent this from bit-rotting again.

That said, what remains to be done:
* More complete tests
* Migrating AnyPointer::Pipeline::getPointerField to AnyStruct / AnyList
* Implementing AnyPointer::Builder::initAsListOfAnyStruct
* Discover / implement further use cases

On that last point, I'd appreciate examples of how other people would use this.  I suspect that not much outside of what's currently in the test suite will actually work right now.