key-value user API: implemented a user function callback on properties update (GH-29)