A library for materializing value types defined as interfaces