gras: work on C++ API for properties interface
gras: property implementation in lib
Merge branch 'master' into property_interface
gras: property tweaks and c++ unit tests
gras: make dispatcher into static helper
gras: work on python hooks for props interface
gras: tweaks to the python unit test
gras: move block set/get into common area