Build properties data

This is the second part of #1380 (after #1384). A third one is expected.

This relies on #1386 (first two commits of this PR), so please don't merge before the other one gets in. This makes the diff a bit bigger (7 lines ...).

There is no release note as ... well, data API *change* are not *changes* as such as they are (as a whole), part of the the big TODO on top of the release note ``talk about big new Nine features``.

It was a suggestion from @tardyp to move the update method to the properties.py file, which makes the test a build awkward as the db stuff in on the build object ...

The ``do_test_callthrough`` is duplicated at multiple places, and doesn't really work as expected (``args`` get unexpected content), this should be part of another PR.

Hope you enjoy it !
I dont understand the XXX, not sure if you want to keep it.