Instantiating field types for ADTs to account for type parameters, resolves #457.