Hypothetical API change:
  StructType takes a second optional 'prototype' argument that forms the basis for the StructType's prototype.
  the result of StructType() has a prototype that cannot be reassigned.