An opaque structure used to hold different types of values.
Template to get a value from a GValue of a given D type (must contain the correct type)
Template to set a GValue to a given D type (must have been initialized to the proper type)