HV-877 Supporting type use constraints on type arguments

This applies to `PropertyMetaData`. After your feedback, I'll continue the work on parameters and return values and I'll extend `ParameterMetaData` and `ReturnValueMetaData`.
> Only FIELD? Properties could be represented by a getter (METHOD) as well.

This is just for now, I'll expand it to getters, return values, and parameters.