C++: Don't spell out arguments to StructureWrapper when not required.
C++: Make StructureWrapper a recurring template, eliminating lots of casts.