Work in progress: make sure notify functions call callbacks and/or send errors as appropriate. Still to do: make deletion work properly in both the scalar and array cases (of the location property).