Helpers for working with Courier/Pegasus Schemas.
Fixes up inferred schemas with additional type information.
When computing the schemas for resources, if the model or value type is not a courier
(or known type), the macro calls org.coursera.naptime.courier.SchemaInference, which
attempts to infer the schema via reflection. There are a number of types that the schema
inferencer cannot handle. This function will take a scala-guice map-binding and fix up
the inappropriately inferred schemas with configured types.
Note: this is a destructive operation, and mutates the input record data schema. Please
use with care to ensure that the schemas are not being modified inappropriately.