Allow `null` as valid value for property data objects

Summary:
`null` must be a valid value for the property
data objects. Also refactored the unit tests.

Reviewers: claus.due, #forgetit-dev

Reviewed By: claus.due, #forgetit-dev

Differential Revision: https://phabricator.dkd.de/D413