Data type validation for arbitrary properties

Signed-off-by: Lahiru Chandima <lahiruchandima@Lahirus-MacBook-Pro.local>