While testing with DynamoDB, found out that our union handling is incorrect in schemas that are inputs. CalibanSchemaVisitor will need to be updated to account for whether it's in an input or an output position, and act accordingly: a union type should be represented as a struct (tagged union encoding)